/* Generated by ai.maomao.design/scripts/build-site-bundle.mjs — do not edit by hand */
/* === mao-color-shadcn.css === */
/**
 * AI 站 MAO-SHADCN 主题（shadcn 语义 + 站点衍生 token）
 * 页底/顶栏基底：--secondary；卡片：--card；主色：--primary（黑）
 */
:root {
  --radius: 0.425rem;

  --secondary: oklch(0.972 0.003 264);
  --secondary-foreground: oklch(0.205 0 0);
  --background: var(--secondary);
  --foreground: oklch(0.145 0 0);

  --card: oklch(1 0 0);
  --card-foreground: oklch(0.145 0 0);
  --popover: oklch(1 0 0);
  --popover-foreground: oklch(0.145 0 0);

  --primary: oklch(0.205 0 0);
  --primary-foreground: oklch(0.985 0 0);

  --muted: oklch(0.94 0.003 264);
  --muted-foreground: oklch(0.556 0 0);
  --accent: oklch(0.98 0.002 264);
  --accent-foreground: oklch(0.205 0 0);

  --destructive: oklch(0.577 0.245 27.325);
  --border: oklch(0.922 0 0);
  --input: oklch(0.922 0 0);
  --ring: oklch(0.708 0 0);

  /* 正文链接（shadcn 浅蓝，与 --primary 黑按钮区分） */
  --link: oklch(0.623 0.214 259.815);
  --link-hover: oklch(0.546 0.245 262.881);

  --chart-1: oklch(0.646 0.222 41.116);
  --chart-2: oklch(0.6 0.118 184.704);
  --chart-3: oklch(0.398 0.07 227.392);
  --chart-4: oklch(0.828 0.189 84.429);
  --chart-5: oklch(0.769 0.188 70.08);

  --sidebar: var(--secondary);
  --sidebar-foreground: oklch(0.145 0 0);
  --sidebar-primary: oklch(0.205 0 0);
  --sidebar-primary-foreground: oklch(0.985 0 0);
  --sidebar-accent: oklch(1 0 0);
  --sidebar-accent-foreground: oklch(0.205 0 0);
  --sidebar-border: oklch(0.922 0 0);
  --sidebar-ring: oklch(0.708 0 0);

  /* 站点衍生（ai-page-bg 等引用，避免重复 color-mix） */
  --ai-header-frost: color-mix(in oklch, var(--secondary) 80%, transparent);
  --ai-fg-78: color-mix(in oklch, var(--foreground) 78%, transparent);
  --ai-fg-55: color-mix(in oklch, var(--foreground) 55%, transparent);
  --ai-fg-50: color-mix(in oklch, var(--foreground) 50%, transparent);
  --ai-overlay-scrim: color-mix(in oklch, var(--foreground) 22%, transparent);
  --ai-shadow-soft: color-mix(in oklch, var(--foreground) 14%, transparent);
  /* 分区标题下横线（比 --border 更弱，暗色再压低对比） */
  --ai-section-divider: color-mix(in oklch, var(--foreground) 10%, transparent);
  /* 网址卡标题 hover 波浪线（与标题字色一致） */
  --ai-title-wave: var(--card-foreground);
  --ai-card-thumb-bg: oklch(0.94 0.002 264);

  --mao-header-h-mobile: 56px;

  /* 主滚动条 token（样式见 ai-page-bg.css html） */
  --mao-scrollbar-size: 11px;
  --mao-scrollbar-thumb: rgba(0, 0, 0, 0.28);
  --mao-scrollbar-thumb-hover: rgba(0, 0, 0, 0.5);
}

html.dark {
  --secondary: #12110d;
  --secondary-foreground: oklch(0.985 0 0);
  --background: var(--secondary);
  --foreground: oklch(0.985 0 0);

  /* 明度保持；压低 chroma，减弱暖偏红棕感 */
  --card: oklch(0.22 0.002 0);
  --card-foreground: oklch(0.985 0 0);
  --popover: var(--card);
  --popover-foreground: var(--card-foreground);

  --primary: oklch(0.205 0 0);
  --primary-foreground: oklch(0.985 0 0);

  --muted: oklch(0.18 0.0015 0);
  --muted-foreground: oklch(0.72 0.004 0);
  --accent: oklch(0.26 0.0025 0);
  --accent-foreground: oklch(0.985 0 0);

  --destructive: oklch(0.704 0.191 22.216);
  --border: color-mix(in oklch, var(--foreground) 6%, transparent);
  --input: color-mix(in oklch, var(--foreground) 12%, transparent);
  --ring: oklch(0.556 0 0);

  --link: oklch(0.709 0.17 256.847);
  --link-hover: oklch(0.809 0.105 251.813);

  --chart-1: oklch(0.809 0.105 251.813);
  --chart-2: oklch(0.623 0.214 259.815);
  --chart-3: oklch(0.546 0.245 262.881);
  --chart-4: oklch(0.488 0.243 264.376);
  --chart-5: oklch(0.424 0.199 265.638);

  --sidebar: var(--secondary);
  --sidebar-foreground: oklch(0.985 0 0);
  --sidebar-primary: var(--card);
  --sidebar-primary-foreground: oklch(0.985 0 0);
  --sidebar-accent: var(--accent);
  --sidebar-accent-foreground: oklch(0.985 0 0);
  --sidebar-border: color-mix(in oklch, var(--foreground) 8%, transparent);
  --sidebar-ring: oklch(0.556 0 0);

  /* srgb 混色：与页底 #12110d 对齐；96% 静止近乎贴合，滚动仍留磨砂透感 */
  --ai-header-frost: color-mix(in srgb, var(--secondary) 96%, transparent);
  --ai-fg-78: color-mix(in oklch, var(--foreground) 78%, transparent);
  --ai-fg-55: color-mix(in oklch, var(--foreground) 55%, transparent);
  --ai-fg-50: color-mix(in oklch, var(--foreground) 50%, transparent);
  --ai-overlay-scrim: color-mix(in oklch, var(--foreground) 18%, transparent);
  --ai-shadow-soft: color-mix(in oklch, var(--foreground) 28%, transparent);
  --ai-section-divider: color-mix(in oklch, var(--foreground) 5%, transparent);
  --ai-title-wave: var(--card-foreground);
  --ai-card-thumb-bg: oklch(0.19 0.0015 0);
  /* 暗色顶栏方标：与网址卡片同底（--card），M 由 blend 保持白 */
  --ai-header-logo-bg: var(--card);
  --ai-header-logo-mark: var(--card-foreground);

  --mao-scrollbar-thumb: rgba(255, 255, 255, 0.28);
  --mao-scrollbar-thumb-hover: rgba(255, 255, 255, 0.45);

  color-scheme: dark;
}

html {
  color-scheme: light;
  background-color: var(--secondary) !important;
}

/* === nav-shell-base.css === */
.hide{visibility:hidden;opacity:0;-webkit-transition:all .2s;-o-transition:all .2s;-moz-transition:all .2s;transition:all .2s}.show{visibility:visible;opacity:1;-webkit-transition:all .2s;-o-transition:all .2s;-moz-transition:all .2s;transition:all .2s}html{font-size:max(13.33333333vw, 50px);background:#eff4f8}@media (min-width:750px){html{font-size:100px}}body{font-family:"PingFang SC","Lantinghei SC","Microsoft YaHei","HanHei SC","Helvetica Neue","Open Sans","Hiragino Sans GB",'微软雅黑',STHeiti,"WenQuanYi Micro Hei",Arial,SimSun,sans-serif;font-size:14px;font-size:max(.14rem, 14px)}body,div,p,h1,h2,h3,h4,h5,h6,ul,ol,li,form,blockquote{margin:0;padding:0}ul,ol,li{list-style:none}i{font-style:normal}a{text-decoration:none}form,input{outline:none;margin:0;text-shadow:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}img{border:0;vertical-align:middle;max-width:100%;height:auto}body.has-header-fixed{padding-top:44px}@media (min-width:1000px){body.has-header-fixed{padding-top:64px}}.pr{position:relative}.thumb{position:relative;display:block;width:100%;padding-top:100%;overflow:hidden;background-position:center;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover;background-repeat:no-repeat}.thumb-round{-webkit-border-radius:100%;-moz-border-radius:100%;border-radius:100%}.thumb-img img{position:absolute;left:0;top:0;display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}[class*='icon-']::before{margin:0}@media (max-width:749.5px){.sm_block{display:block}}@media (max-width:749.5px){.hide_sm{display:none}}.thumb-pos-top{background-position:center top}.thumb-pos-top img{-o-object-position:center top;object-position:center top}.thumb-pos-bottom{background-position:center bottom}.thumb-pos-bottom img{-o-object-position:center bottom;object-position:center bottom}.btn{display:inline-block;-webkit-border-radius:.4em;-moz-border-radius:.4em;border-radius:.4em;line-height:2.4em;white-space:nowrap;border:none;text-align:center;padding:0 .6em;cursor:pointer}.flex{display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:stretch;-webkit-align-items:stretch;-moz-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.flex .f-box{width:100%;height:100%}.flex,.f-item,.f-box{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.oh{overflow:hidden}.container{position:relative}.container .wrap-left{display:none;position:absolute;left:0;top:0;width:177px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding-left:17px}@media (min-width:1000px){.container{padding-left:170px;height:100%}.container .wrap-left{display:block}}@media (min-width:1660px){.container{padding-left:180px}.container .wrap-left{padding-left:27px}}@media (min-width:1900px){.container{width:1720px;margin:0 auto}}@media (min-width:750px){.part-main{padding-top:15px}}@media (min-width:1000px){.part-main{padding-top:30px}}.part-sidebar{position:absolute;top:0;left:0;width:167px;display:none}.part-sidebar.a-fixed{position:fixed;z-index:2;top:94px}.part-sidebar.a-absolute{position:absolute;top:auto;bottom:0}@media (min-width:1000px){.part-sidebar{display:block}}@media (min-width:1660px){.part-sidebar{width:177px}}@media (min-width:1900px){.part-sidebar{left:auto;margin-left:-177px}}.part-sidebar .sidebar-menu-wrap{position:relative}.part-sidebar .sidebar-menu{position:relative;padding-left:17px;max-height:-webkit-calc(100vh - 170px);max-height:-moz-calc(100vh - 170px);max-height:calc(100vh - 170px);overflow-x:hidden;overflow-y:auto;-webkit-transition:all .2s;-o-transition:all .2s;-moz-transition:all .2s;transition:all .2s}@media (min-width:1660px){.part-sidebar .sidebar-menu{padding-left:27px}}.part-sidebar .sidebar-menu::-webkit-scrollbar{display:none}.part-sidebar .sidebar-menu .menu-item{display:block;width:150px}.part-sidebar .sidebar-menu .menu-a{display:block;font-size:14px;padding:0 16px;position:relative;color:#5a5a5a}.part-sidebar .sidebar-menu .menu-a .in{display:block;line-height:20px}.part-sidebar .sidebar-menu .menu-a .ico{margin-right:5px;display:inline-block;vertical-align:top;width:20px;height:20px;line-height:inherit;text-align:center;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.part-sidebar .sidebar-menu .menu-a:hover{background-color:#fff;color:#222}.part-sidebar .sidebar-menu .menu-a.active{background-color:transparent;color:#fff}.part-sidebar .sn{position:relative;padding-left:17px}@media (min-width:1660px){.part-sidebar .sn{padding-left:27px}}@media (min-width:750px){.part-sidebar .sidebar-menu-scrollbar{position:absolute;left:0;top:0;bottom:0;display:none}.part-sidebar .sidebar-menu-scrollbar .block{-webkit-transition:all .2s;-o-transition:all .2s;-moz-transition:all .2s;transition:all .2s;display:block;position:absolute;left:0;width:4px;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;background-color:#DDE3E8;cursor:pointer}.part-sidebar .sidebar-menu-scrollbar .block:hover{background-color:#cbd4dc}.part-sidebar .sidebar-menu-wrap:hover .sidebar-menu-scrollbar.show{display:block}}@-webkit-keyframes shake{10%,90%{-webkit-transform:translate(0, -1px);transform:translate(0, -1px)}30%,50%,70%{-webkit-transform:translate(0, 15px);transform:translate(0, 15px)}}@-moz-keyframes shake{10%,90%{-moz-transform:translate(0, -1px);transform:translate(0, -1px)}30%,50%,70%{-moz-transform:translate(0, 15px);transform:translate(0, 15px)}}@-o-keyframes shake{10%,90%{-o-transform:translate(0, -1px);transform:translate(0, -1px)}30%,50%,70%{-o-transform:translate(0, 15px);transform:translate(0, 15px)}}@-webkit-keyframes shake_b{10%,90%{-webkit-transform:translate(0, 1px);transform:translate(0, 1px)}30%,50%,70%{-webkit-transform:translate(0, -15px);transform:translate(0, -15px)}}@-moz-keyframes shake_b{10%,90%{-moz-transform:translate(0, 1px);transform:translate(0, 1px)}30%,50%,70%{-moz-transform:translate(0, -15px);transform:translate(0, -15px)}}@-o-keyframes shake_b{10%,90%{-o-transform:translate(0, 1px);transform:translate(0, 1px)}30%,50%,70%{-o-transform:translate(0, -15px);transform:translate(0, -15px)}}.main .main-wrap{max-width:1660px;margin:0 auto}@media (min-width:750px){.main{padding:0 15px}}@media (min-width:1330px){.main{padding:0 30px}}.p-item{width:50%;padding:0 9px;margin-bottom:20px}@media (min-width:750px){.p-item{width:33.33333333%}}@media (min-width:1000px){.p-item{width:25%;padding:0 10px}}@media (min-width:1330px){.p-item{width:16.66666667%}}.p-item .f-box{display:block}@media (min-width:750px){.p-item .f-box{padding:20px;background-color:#fff;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;overflow:hidden;-webkit-transition:all .2s;-o-transition:all .2s;-moz-transition:all .2s;transition:all .2s}.p-item .f-box:hover{-webkit-transform:translateY(-4px);-moz-transform:translateY(-4px);-ms-transform:translateY(-4px);-o-transform:translateY(-4px);transform:translateY(-4px);-webkit-box-shadow:0 4px 20px rgba(0,0,0,0.04);-moz-box-shadow:0 4px 20px rgba(0,0,0,0.04);box-shadow:0 4px 20px rgba(0,0,0,0.04)}.p-item .f-box:hover .item-title{color:#222}.p-item .f-box:hover .title{color:#222;text-decoration:underline}.p-item .f-box:hover .item-desc{color:#5a5a5a}}@media (min-width:1000px) and (max-width:1659.5px){.p-item .f-box{padding:14px}}.p-item .item-title{line-height:28px;margin-bottom:12px;white-space:nowrap;overflow:hidden;color:#3c3c3c;-o-text-overflow:clip;text-overflow:clip}@media (min-width:1660px){.p-item .item-title{line-height:32px}}.p-item .item-title .title{font-size:16px;color:#3c3c3c}.p-item .item-ico{display:inline-block;vertical-align:top;width:28px;height:28px;-webkit-border-radius:100%;-moz-border-radius:100%;border-radius:100%;overflow:hidden;margin-right:5px}@media (min-width:1660px){.p-item .item-ico{width:32px;height:32px}}.p-item .item-ico .ico{display:block;width:100%;text-align:center;color:#fff;background-color:#417ff9;font-size:20px}.p-item .item-desc{font-size:12px;color:#8f8f8f;line-height:18px;height:36px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.p-item .item-tag{height:20px;overflow:hidden;margin-top:12px}.p-item .item-tag .tag{display:inline-block;background-color:#f8f8f8;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;line-height:20px;white-space:nowrap;font-size:12px;padding:0 6px;color:#9ca7ae;margin-right:5px}@media (max-width:749.5px){.p-item .item-title{margin-bottom:10px}.p-item .item-title .title{font-size:14px}.p-item .item-desc{line-height:20px;height:40px}}.part-item-mao-card .f-box{position:relative}@media (min-width:750px){.part-item-mao-card .f-box{padding:30px 20px}.part-item-mao-card .f-box:hover{-webkit-box-shadow:0 0 30px rgba(0,0,0,0.1);-moz-box-shadow:0 0 30px rgba(0,0,0,0.1);box-shadow:0 0 30px rgba(0,0,0,0.1)}}.part-item-mao-card .item-thumb{width:64px;margin:0 auto 20px}.part-item-mao-card .item-thumb .thumb{padding-top:100%;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;overflow:hidden}.part-item-mao-card .item-thumb .thumb img{-o-object-fit:contain;object-fit:contain;-webkit-transition:all .2s;-o-transition:all .2s;-moz-transition:all .2s;transition:all .2s}.part-item-mao-card .item-title{white-space:nowrap;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;text-align:center;margin-bottom:6px}.part-item-mao-card .item-desc{text-align:center;margin-bottom:20px}.part-item-mao-card .item-tag{text-align:center}.part-item-mao-card .item-tag .tag{margin:0 3px}@media (max-width:749.5px){.part-item-mao-card{width:100%}.part-item-mao-card .f-box{position:relative;padding-left:70px}.part-item-mao-card .item-thumb{position:absolute;left:0;top:0;width:50px}.part-item-mao-card .item-title,.part-item-mao-card .item-desc,.part-item-mao-card .item-tag{text-align:left}.part-item-mao-card .item-title{font-size:15px;line-height:1;margin-bottom:10px}.part-item-mao-card .item-desc{font-size:12px;line-height:17px;margin-bottom:10px}}@media (max-width:749.5px){.part-cats-loop{margin:0 10px}}.part-cat-block{margin-bottom:15px}@media (min-width:1000px){.part-cat-block{margin-bottom:40px}}.part-cat-block .c-title{height:26px;line-height:26px;margin-bottom:24px;display:-webkit-box;display:-webkit-flex;display:-moz-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;font-weight:normal}.part-cat-block .c-title .l{-webkit-box-flex:0;-webkit-flex-grow:0;-moz-box-flex:0;-ms-flex-positive:0;flex-grow:0}.part-cat-block .c-title .l strong{font-size:20px;color:#000}.part-cat-block .c-title .l strong a{color:#000}@media (min-width:750px){.part-cat-block .c-content{margin-bottom:15px}}@media (min-width:1000px){.part-cat-block .c-content{margin-bottom:40px}}.part-cat-block .c-loop{margin:0 -9px -15px}@media (min-width:1000px){.part-cat-block .c-loop{margin:0 -10px -20px}}@media (max-width:749.5px){.part-cat-block{background-color:#fff;padding:15px;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.part-cat-block .c-title{padding-bottom:10px;position:relative;margin-bottom:15px}.part-cat-block .c-title:after{content:'';display:block;height:1px;background-color:#F1F4F9;position:absolute;left:-15px;right:-15px;bottom:0}.part-cat-block .c-title .l{white-space:nowrap;overflow-y:hidden;overflow-x:auto}.part-cat-block .c-title .l::-webkit-scrollbar{display:none}.part-cat-block .c-title .l strong{font-size:16px}.part-cat-block .c-title-mob-no-r .l{width:100%;position:relative}.part-cat-block .c-title-mob-no-r .r{display:none}}.part-footer-fixed{position:fixed;right:10px;bottom:.15rem;z-index:11;padding-left:.3rem;display:none}@media (min-width:1000px){.part-footer-fixed{display:block}}@media (min-width:2036px){.part-footer-fixed{right:auto;left:50%;padding-left:0;margin-left:960px}}.part-footer-fixed.hide{z-index:-1}.part-footer-fixed .f-nav{position:relative}.part-footer-fixed .f-nav .item{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.part-footer-fixed .gotop .pt{display:none}.part-footer-fixed .gotop .item{background-color:#417ff9;color:#fff;-webkit-border-radius:.06rem;-moz-border-radius:.06rem;border-radius:.06rem}.part-footer-fixed .gotop .item:hover{background-color:#105ef7;color:#fff}@media (max-width:1659.5px){.part-footer-fixed .gotop .item{width:36px;height:36px;line-height:36px}}.part-footer-fixed .item{position:relative;display:block;width:.46rem;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;height:.46rem;line-height:.46rem;text-align:center;font-size:.2rem;color:#999;cursor:pointer;background:rgba(255,255,255,0.8)}@media (min-width:750px){.part-footer-fixed .item{background:#fff}}.part-footer-fixed .item:hover{color:#222}.part-footer-fixed .item a{color:#999}.part-footer-fixed .item a:hover{color:#222}.h-menus{display:none}@media (min-width:1000px){.h-menus{display:block;-webkit-box-flex:1;-webkit-flex-grow:1;-moz-box-flex:1;-ms-flex-positive:1;flex-grow:1}}.h-menus .part-header-bar-menu{height:100%}.h-menus .b-wrap{height:100%;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.h-menus .menu-a{display:block;margin:0 8px;color:rgba(255,255,255,0.8);padding:8px 0}.h-menus .menu-a:hover{color:#fff}@media (min-width:1330px){.h-menus .menu-a{padding:8px 0;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;margin:0 15px}.h-menus .menu-a:hover{background-color:rgba(0,0,0,0.1)}}.h-menus .menu-item{position:relative}.h-menus .menu-item:hover .submenu{visibility:visible;opacity:1;-webkit-transition:all .2s;-o-transition:all .2s;-moz-transition:all .2s;transition:all .2s;top:100%}@media (min-width:1330px){.h-menus .menu-item:hover .menu-a{color:#fff;background-color:rgba(0,0,0,0.1)}}.h-menus .submenu{visibility:hidden;opacity:0;-webkit-transition:all .2s;-o-transition:all .2s;-moz-transition:all .2s;transition:all .2s;-webkit-transition:none;-o-transition:none;-moz-transition:none;transition:none;position:absolute;left:50%;top:80%;padding-top:15px;-webkit-transform:translate(-50%, 0);-moz-transform:translate(-50%, 0);-ms-transform:translate(-50%, 0);-o-transform:translate(-50%, 0);transform:translate(-50%, 0)}.h-menus .submenu::before{content:'';display:block;border:5px solid transparent;border-bottom-color:#fff;position:absolute;left:50%;top:6px;-webkit-transform:translate(-50%, 0);-moz-transform:translate(-50%, 0);-ms-transform:translate(-50%, 0);-o-transform:translate(-50%, 0);transform:translate(-50%, 0)}@media (max-width:999.5px){.h-menus .submenu{display:none}}.h-subs{display:none}@media (min-width:1000px){.h-subs{display:block}}.h-subs .b-wrap{height:100%;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap}.header{height:64px;z-index:10;position:fixed;left:0;top:0;right:0;background:rgba(65,127,249,0.9);-webkit-backdrop-filter:saturate(180%) blur(4px);backdrop-filter:saturate(180%) blur(4px)}.header .logo-a{display:block}.header .logo .logo-img{display:block;padding:12px 0}.header .logo svg{display:block;margin:0 auto;width:auto;height:40px;fill:#fff}.header .header-main{-webkit-box-pack:justify;-webkit-justify-content:space-between;-moz-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;max-width:1720px;margin:0 auto;padding:0 15px;height:100%}@media (min-width:1330px){.header .header-main{padding:0 30px;height:100%}}@media (max-width:999.5px){.header{height:44px}.header .container{padding-left:80px}.header .container .wrap-left{display:block;width:60px;padding-left:20px}.header .logo .logo-img{padding:8px 0}.header .logo svg{height:28px}.header .header-main{padding:0 10px;-webkit-box-pack:end;-webkit-justify-content:flex-end;-moz-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}}

/* === mao-logo-header.css === */
/* 顶栏 LOGO（img）：大屏 36px / 窄屏 32px，圆角 8px（标准 round，跨浏览器一致） */
.header .logo .logo-img {
  line-height: 0;
  padding-top: 0;
  padding-bottom: 0;
  box-sizing: border-box;
  display: flex;
  align-items: center;
}

/*
 * 桌面：h2.logo.wrap-left = 与侧栏同宽的左列外容器（nav shell 绝对定位列）
 * 勿改 position/static，勿让顶栏 flex 把 LOGO 挤出侧栏列。
 */
@media (min-width: 1000px) {
  body.has-header-fixed .header .container {
    position: relative !important;
    min-height: 64px !important;
    height: 64px !important;
    box-sizing: border-box !important;
  }

  body.has-header-fixed .header .container .wrap-left,
  body.has-header-fixed .header h2.logo.wrap-left {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 167px !important;
    height: 100% !important;
    margin: 0 !important;
    padding-left: 17px !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }

  body.has-header-fixed .header .logo .logo-a,
  body.has-header-fixed .header .logo .logo-img {
    display: flex !important;
    align-items: center !important;
    height: auto !important;
    margin: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}

@media (min-width: 1660px) {
  body.has-header-fixed .header .container .wrap-left,
  body.has-header-fixed .header h2.logo.wrap-left {
    width: 177px !important;
    padding-left: 27px !important;
  }
}
.header .logo .logo-img img {
  display: block;
  height: 36px;
  width: auto;
  max-width: min(100%, 140px);
  min-width: 0;
  min-height: 0;
  max-height: 36px;
  object-fit: contain;
  object-position: left center;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  opacity: 1;
  filter: none;
}

@media (max-width: 999.5px) {
  /* 主题窄屏 .wrap-left 仅 60px，会裁切横向字标 */
  .header .container .wrap-left {
    width: auto !important;
    max-width: calc(100vw - 56px) !important;
    min-width: 0 !important;
    overflow: visible !important;
    padding-left: 12px !important;
    box-sizing: border-box !important;
  }

  .header .logo .logo-a {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    min-height: var(--mao-header-h-mobile, 56px) !important;
    height: 100% !important;
  }

  .header .logo .logo-img {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .header .logo .logo-img img {
    height: 32px !important;
    max-height: 32px !important;
    width: auto !important;
    max-width: min(100%, 120px) !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    -webkit-border-radius: 4px !important;
    -moz-border-radius: 4px !important;
    border-radius: 4px !important;
  }

  .header .logo svg {
    margin: 0 !important;
  }
}

/* 暗色：方标底 = --card（与网址卡片一致），SVG 黑底透出、白 M 保留 */
html.dark .header .logo .logo-img {
  background-color: var(--ai-header-logo-bg, var(--card));
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  overflow: hidden;
}

html.dark .header .logo .logo-img img {
  mix-blend-mode: normal;
}

html.dark .header .logo .logo-img.mao-header-logo--custom,
html.dark .header .logo .logo-img.mao-header-logo--custom-dark {
  background-color: transparent;
}

html.dark .header .logo .logo-img.mao-header-logo--custom img,
html.dark .header .logo .logo-img.mao-header-logo--custom-dark img {
  mix-blend-mode: normal;
}

@media (max-width: 999.5px) {
  html.dark .header .logo .logo-img {
    -webkit-border-radius: 8px !important;
    -moz-border-radius: 8px !important;
    border-radius: 8px !important;
  }
}

/* === ai-page-bg.css === */
/* 全站页面底色 + 主滚动条（Locomotive / mr admin-scroll 同源；全站 html 统一宽度，防顶栏跳动） */
html {
  --nav-scroll-gap: 30px;
  background-color: var(--secondary) !important;
  scrollbar-gutter: stable;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: var(--mao-scrollbar-thumb) transparent;
}

html::-webkit-scrollbar {
  width: var(--mao-scrollbar-size);
}

html::-webkit-scrollbar-track {
  background: transparent;
}

html::-webkit-scrollbar-thumb {
  background-color: var(--mao-scrollbar-thumb);
  border-radius: 10px;
  border: 2px solid transparent;
  background-clip: padding-box;
}

html::-webkit-scrollbar-thumb:hover {
  background-color: var(--mao-scrollbar-thumb-hover);
}

html::-webkit-scrollbar-button {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  appearance: none;
}

html::-webkit-scrollbar-corner {
  background: transparent;
}

@media (forced-colors: active) {
  html {
    scrollbar-color: auto;
  }
}/* 侧栏锚点 / 原生 # 跳转：分区标题留在固定顶栏下方（桌面） */
@media (min-width: 1000px) {
  body.body-mao-nav.page-mao-nav .part-cats-loop .c-title {
    scroll-margin-top: calc(
      var(--site-topbar-h, 72px) + var(--nav-scroll-gap, 30px)
    );
  }
}@media (max-width: 999.5px) {
  html {
    --mao-header-h-mobile: 56px;
    --mao-mobile-category-strip-h: 52px;
  }

  body.has-header-fixed {
    padding-top: var(--mao-header-h-mobile) !important;
  }

  .header {
    height: var(--mao-header-h-mobile) !important;
  }

  .header .container {
    display: flex !important;
    align-items: center !important;
    height: 100% !important;
    min-height: 0 !important;
    box-sizing: border-box !important;
  }

  .header .container .wrap-left,
  .header .header-main {
    display: flex !important;
    align-items: center !important;
  }

  .header .header-main {
    height: 100% !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }

  .header .logo {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
  }

  body.body-mao-nav.page-mao-nav .part-cats-loop .c-title {
    scroll-margin-top: calc(
      var(--site-topbar-h, var(--mao-header-h-mobile, 72px))
        + var(--mao-mobile-category-strip-h, 52px)
        + var(--nav-scroll-gap, 30px)
    );
  }
}body {
  background-color: var(--secondary) !important;
}/*
 * AI 导航：#app 纵向 flex，主区撑满剩余高度，备案区贴视口底。
 * 刷新 / 切换导航页时避免内容未注入前备案区「上跳」。
 * 侧栏对齐依赖 part-main .container + wrap-left 绝对定位（见 mao-logo-header / useSidebarSpy）。
 */
body.body-mao-nav.page-mao-nav #app {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  min-height: 100dvh !important;
  min-height: 100vh !important;
}body.body-mao-nav.page-mao-nav #app > .part-main {
  flex: 1 1 auto !important;
  width: 100% !important;
  min-height: 0 !important;
}body.body-mao-nav.page-mao-nav #app > .mao-footer-beian {
  flex-shrink: 0 !important;
}@media (max-width: 999.5px) {
  body.body-mao-nav.page-mao-nav.has-header-fixed #app {
    min-height: calc(100dvh - var(--mao-header-h-mobile, 56px)) !important;
    min-height: calc(100vh - var(--mao-header-h-mobile, 56px)) !important;
  }
}html.mao-site-shell-pending body.body-mao-nav.page-mao-nav .mao-footer-beian {
  min-height: 4.5rem !important;
}/* 顶栏：--secondary 80% 透明 + 背景模糊（与页底同色语义） */
.header {
  background: var(--ai-header-frost) !important;
  -webkit-backdrop-filter: blur(16px) saturate(1.15) !important;
  backdrop-filter: blur(16px) saturate(1.15) !important;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}.header .h-menus .b-wrap.flex {
  isolation: isolate;
}/* 顶栏 tab 相对 .container 视觉居中（左侧 LOGO 列 + 右侧搜索不对称）。
 * h-menus 脱离 header-main 定位上下文，锚到 .container（position:relative 见 mao-logo-header.css）。
 * 勿改 .wrap-left / h2.logo 的绝对定位与宽度。 */

/* 顶栏搜索 — 桌面顶栏与移动浮层共用 */
.mao-header-nav-search {
  position: relative;
}

.mao-header-nav-search__label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.mao-header-nav-search__icon {
  position: absolute;
  left: 10px;
  top: 50%;
  width: 14px;
  height: 14px;
  color: var(--muted-foreground);
  pointer-events: none;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.mao-header-nav-search__icon-glyph {
  display: block;
  width: 14px;
  height: 14px;
  background-color: currentColor;
  -webkit-mask: url("/assets/icon/nav-search.svg") no-repeat center / contain;
  mask: url("/assets/icon/nav-search.svg") no-repeat center / contain;
}

.mao-header-nav-search__input {
  display: block;
  width: 100%;
  height: 34px;
  padding: 0 12px 0 32px;
  border: none;
  border-radius: 999px;
  background: color-mix(in oklch, var(--foreground) 7%, var(--secondary));
  color: var(--foreground);
  font-size: 13px;
  line-height: 1.2;
  box-sizing: border-box;
  -webkit-appearance: none;
  appearance: none;
  outline: none;
  box-shadow: none;
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}

html.dark .mao-header-nav-search__input {
  background: color-mix(in oklch, black 12%, var(--secondary));
}

.mao-header-nav-search__input::placeholder {
  color: var(--muted-foreground);
  opacity: 0.72;
}

.mao-header-nav-search__input:hover {
  background: color-mix(in oklch, var(--foreground) 10%, var(--secondary));
}

html.dark .mao-header-nav-search__input:hover {
  background: color-mix(in oklch, black 8%, var(--secondary));
}

.mao-header-nav-search__input:focus {
  background: color-mix(in oklch, var(--foreground) 11%, var(--secondary));
  box-shadow: none;
}

html.dark .mao-header-nav-search__input:focus {
  background: color-mix(in oklch, black 6%, var(--secondary));
}

.mao-header-nav-search__input--has-value {
  padding-right: 34px !important;
}

.mao-header-nav-search__input::-webkit-search-cancel-button,
.mao-header-nav-search__input::-webkit-search-decoration {
  -webkit-appearance: none;
  appearance: none;
  display: none;
}

.mao-header-nav-search__clear {
  position: absolute;
  right: 8px;
  top: 50%;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  padding: 0;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  color: var(--muted-foreground);
  background: color-mix(in oklch, var(--foreground) 10%, transparent);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: background-color 0.12s ease, color 0.12s ease;
  transition: background-color 0.12s ease, color 0.12s ease;
}

.mao-header-nav-search__clear-glyph {
  display: block;
  width: 10px;
  height: 10px;
  background-color: currentColor;
  -webkit-mask: url("/assets/icon/nav-close.svg") no-repeat center / contain;
  mask: url("/assets/icon/nav-close.svg") no-repeat center / contain;
}

.mao-header-nav-search__clear:hover {
  color: var(--foreground);
  background: color-mix(in oklch, var(--foreground) 16%, transparent);
}

html.dark .mao-header-nav-search__clear {
  background: color-mix(in oklch, white 10%, transparent);
}

html.dark .mao-header-nav-search__clear:hover {
  background: color-mix(in oklch, white 16%, transparent);
}

.mao-header-nav-search__clear:focus-visible {
  outline: 2px solid var(--ring);
  outline-offset: 2px;
}

@media (min-width: 1000px) {
  body.body-mao-nav.page-mao-nav .header .header-main.flex {
    position: static !important;
    -webkit-box-pack: end !important;
    -webkit-justify-content: flex-end !important;
    -moz-box-pack: end !important;
    -ms-flex-pack: end !important;
    justify-content: flex-end !important;
  }

  body.body-mao-nav.page-mao-nav .header .h-menus.h-item {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    -webkit-transform: translate(-50%, -50%) !important;
    transform: translate(-50%, -50%) !important;
    -webkit-box-flex: 0 !important;
    -webkit-flex: none !important;
    flex: none !important;
    flex-grow: 0 !important;
    width: auto !important;
    max-width: none !important;
    z-index: 1;
  }

  body.body-mao-nav.page-mao-nav .header .h-menus .b-wrap.flex {
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
    -moz-box-pack: center !important;
    -ms-flex-pack: center !important;
    justify-content: center !important;
  }

  body.body-mao-nav.page-mao-nav .header .h-subs.h-item {
    position: relative !important;
    z-index: 2;
    display: flex !important;
    flex: none !important;
    align-items: center !important;
    justify-content: flex-end !important;
    min-width: 0 !important;
    margin-left: 0 !important;
  }

  body.body-mao-nav.page-mao-nav .header .h-subs .mao-header-nav-search {
    flex-shrink: 0;
  }

  .mao-header-nav-search {
    width: 200px;
    max-width: 24vw;
  }

  .header .mao-mobile-search-toggle,
  .mao-mobile-search-panel {
    display: none !important;
  }
}@media (max-width: 999.5px) {
  .header .h-subs .mao-header-nav-search {
    display: none !important;
  }
  .header .mao-header-action-icon {
    display: block;
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    background-color: currentColor;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
  }
  .header .mao-header-action-icon--search {
    -webkit-mask-image: url("/assets/icon/nav-search.svg");
    mask-image: url("/assets/icon/nav-search.svg");
  }
  .header .mao-header-action-icon--close {
    -webkit-mask-image: url("/assets/icon/nav-close.svg");
    mask-image: url("/assets/icon/nav-close.svg");
  }
  .header .mao-header-action-icon--menu {
    -webkit-mask-image: url("/assets/icon/nav-menu.svg");
    mask-image: url("/assets/icon/nav-menu.svg");
  }
  .header .mao-mobile-search-toggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    margin: 0;
    padding: 0;
    border: none;
    border-radius: 8px;
    background: transparent;
    color: var(--foreground);
    cursor: pointer;
    position: relative;
    z-index: 52;
    -webkit-tap-highlight-color: transparent;
  }
  .header .mao-mobile-search-toggle:focus-visible {
    outline: 2px solid var(--ring);
    outline-offset: 2px;
  }
  .header .mao-mobile-search-toggle.is-active {
    color: var(--foreground);
    background: transparent;
  }
  .header .mao-mobile-search-toggle:active {
    background: transparent;
  }
  html.dark .header .mao-mobile-search-toggle:active {
    background: transparent;
  }
  body.mao-mobile-search-open .header.mao-header--mobile-search-open,
  body.mao-mobile-search-open .header {
    display: flex;
    flex-direction: column;
    gap: 10px;
    height: auto !important;
    min-height: var(--mao-header-h-mobile, 56px);
  }
  body.mao-mobile-search-open .header .container {
    flex-shrink: 0;
    height: var(--mao-header-h-mobile, 56px) !important;
    min-height: var(--mao-header-h-mobile, 56px) !important;
  }
  body.mao-mobile-search-open .header .container .wrap-left,
  body.mao-mobile-search-open .header h2.logo.wrap-left {
    height: var(--mao-header-h-mobile, 56px) !important;
  }
  .mao-mobile-search-panel {
    position: relative;
    flex-shrink: 0;
    display: grid;
    grid-template-rows: 0fr;
    width: 100%;
    padding: 0 12px;
    box-sizing: border-box;
    background: transparent;
    border-bottom: 1px solid transparent;
    opacity: 0;
    overflow: hidden;
    pointer-events: none;
    -webkit-transition:
      grid-template-rows 0.15s ease,
      opacity 0.15s ease,
      padding 0.15s ease,
      border-color 0.15s ease;
    transition:
      grid-template-rows 0.15s ease,
      opacity 0.15s ease,
      padding 0.15s ease,
      border-color 0.15s ease;
  }
  .mao-mobile-search-panel__inner {
    min-height: 0;
    overflow: hidden;
  }
  body.mao-mobile-search-open:not(.mao-mobile-search-closing) .mao-mobile-search-panel {
    grid-template-rows: 1fr;
    padding: 0 12px 10px;
    border-bottom-color: color-mix(in srgb, var(--border) 55%, transparent);
    opacity: 1;
    pointer-events: auto;
  }

  body.mao-mobile-search-closing .mao-mobile-search-panel {
    grid-template-rows: 0fr;
    padding: 0 12px;
    border-bottom-color: transparent;
    opacity: 0;
    pointer-events: none;
  }

  body.mao-mobile-search-closing .header.mao-header--mobile-search-open,
  body.mao-mobile-search-closing .header {
    gap: 0;
    transition: gap 0.15s ease;
  }

  html:has(body.mao-mobile-search-open) {
    scroll-padding-top: var(--mao-header-stack-h, 117px);
  }

  html:has(body.mao-mobile-search-closing) {
    scroll-padding-top: var(--mao-header-h-mobile, 56px);
  }

  @media (prefers-reduced-motion: reduce) {
    .mao-mobile-search-panel {
      -webkit-transition: none;
      transition: none;
    }
  }
  .mao-mobile-search-panel .mao-header-nav-search {
    display: block !important;
    width: 100%;
    max-width: none;
  }
  .mao-mobile-search-panel .mao-header-nav-search__input {
    height: 40px;
  }
  html {
    --mao-header-search-gap: 10px;
    --mao-header-search-panel-h: 51px;
    --mao-header-search-row-h: calc(var(--mao-header-search-gap) + var(--mao-header-search-panel-h));
    --mao-header-stack-h: calc(var(--mao-header-h-mobile, 56px) + var(--mao-header-search-row-h));
    --mao-mobile-search-content-gap: 12px;
  }
  body.mao-mobile-search-open.has-header-fixed {
    padding-top: var(--mao-header-stack-h) !important;
    padding-bottom: var(--mao-vv-keyboard-inset, 0px);
    transition: padding-top 0.15s ease;
  }

  body.mao-mobile-search-closing.has-header-fixed {
    padding-top: var(--mao-header-h-mobile, 56px) !important;
  }

  body.mao-mobile-search-open.body-mao-nav.page-mao-nav:has(.mao-nav-search-empty) {
    overflow: hidden;
    overscroll-behavior: none;
  }

  body.mao-mobile-search-open:not(.mao-mobile-search-closing).body-mao-nav.page-mao-nav .part-cats-loop {
    margin-top: var(--mao-mobile-search-content-gap) !important;
    transition: margin-top 0.15s ease;
  }

  body.mao-mobile-search-closing.body-mao-nav.page-mao-nav .part-cats-loop {
    margin-top: 0 !important;
  }

  body.mao-mobile-search-open.body-mao-nav.page-mao-nav.has-header-fixed #app {
    min-height: calc(100dvh - var(--mao-header-stack-h)) !important;
    min-height: calc(100vh - var(--mao-header-stack-h)) !important;
    transition: min-height 0.15s ease;
  }

  body.mao-mobile-search-closing.body-mao-nav.page-mao-nav.has-header-fixed #app {
    min-height: calc(100dvh - var(--mao-header-h-mobile, 56px)) !important;
    min-height: calc(100vh - var(--mao-header-h-mobile, 56px)) !important;
  }
  body.mao-mobile-search-open.body-mao-nav.page-mao-nav:has(.mao-nav-search-empty).has-header-fixed #app {
    min-height: auto !important;
  }
}body.body-mao-nav.page-mao-nav .mao-nav-search-empty {
  margin: 28px 0 48px;
  text-align: center;
  scroll-margin-top: calc(var(--mao-header-h-mobile, 56px) + var(--nav-scroll-gap, 30px));
}@media (max-width: 999.5px) {
  body.mao-mobile-search-open.body-mao-nav.page-mao-nav .mao-nav-search-empty {
    scroll-margin-top: calc(var(--mao-header-stack-h, 117px) + var(--nav-scroll-gap, 30px));
  }
}body.body-mao-nav.page-mao-nav .mao-nav-search-empty__lead {
  margin: 0 0 10px;
  font-size: 14px;
  line-height: 1.6;
  color: var(--muted-foreground);
}body.body-mao-nav.page-mao-nav .mao-nav-search-empty__hint {
  margin: 0 0 14px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--foreground);
  font-weight: 500;
}body.body-mao-nav.page-mao-nav .mao-nav-search-empty__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  max-width: 36rem;
  margin: 0 auto;
}body.body-mao-nav.page-mao-nav .mao-nav-search-empty__chip {
  appearance: none;
  border: 1px solid var(--nav-search-chip-border, var(--border));
  border-radius: 999px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: 0 14px;
  font-size: 13px;
  line-height: 1;
  font-weight: 500;
  white-space: nowrap;
  background-color: var(--nav-search-chip-bg, var(--secondary));
  color: var(--nav-search-chip-fg, var(--foreground));
  box-shadow: none;
  transition: background-color 0.12s ease, border-color 0.12s ease, color 0.12s ease;
}body.body-mao-nav.page-mao-nav .mao-nav-search-empty__chip:hover {
  background-color: var(--nav-search-chip-bg-hover, var(--nav-search-chip-bg, var(--secondary)));
  border-color: var(--nav-search-chip-border-hover, var(--nav-search-chip-border, var(--border)));
}body.body-mao-nav.page-mao-nav .mao-nav-search-empty__chip:active {
  background-color: var(--nav-search-chip-bg-active, var(--nav-search-chip-bg-hover, var(--secondary)));
}body.body-mao-nav.page-mao-nav .mao-nav-search-empty__chip:focus-visible {
  outline: 2px solid var(--ring);
  outline-offset: 2px;
}body.body-mao-nav.page-mao-nav .mao-nav-search-empty__chip[data-tag-tone="0"] {
  --nav-search-chip-bg: hsl(214 52% 92%);
  --nav-search-chip-bg-hover: hsl(214 52% 87%);
  --nav-search-chip-bg-active: hsl(214 52% 84%);
  --nav-search-chip-border: hsl(214 32% 80%);
  --nav-search-chip-border-hover: hsl(214 32% 72%);
  --nav-search-chip-fg: hsl(214 28% 34%);
}body.body-mao-nav.page-mao-nav .mao-nav-search-empty__chip[data-tag-tone="1"] {
  --nav-search-chip-bg: hsl(262 44% 93%);
  --nav-search-chip-bg-hover: hsl(262 44% 88%);
  --nav-search-chip-bg-active: hsl(262 44% 85%);
  --nav-search-chip-border: hsl(262 28% 81%);
  --nav-search-chip-border-hover: hsl(262 28% 73%);
  --nav-search-chip-fg: hsl(262 24% 38%);
}body.body-mao-nav.page-mao-nav .mao-nav-search-empty__chip[data-tag-tone="2"] {
  --nav-search-chip-bg: hsl(330 44% 93%);
  --nav-search-chip-bg-hover: hsl(330 44% 88%);
  --nav-search-chip-bg-active: hsl(330 44% 85%);
  --nav-search-chip-border: hsl(330 28% 81%);
  --nav-search-chip-border-hover: hsl(330 28% 73%);
  --nav-search-chip-fg: hsl(330 24% 38%);
}body.body-mao-nav.page-mao-nav .mao-nav-search-empty__chip[data-tag-tone="3"] {
  --nav-search-chip-bg: hsl(24 56% 92%);
  --nav-search-chip-bg-hover: hsl(24 56% 87%);
  --nav-search-chip-bg-active: hsl(24 56% 84%);
  --nav-search-chip-border: hsl(24 34% 79%);
  --nav-search-chip-border-hover: hsl(24 34% 71%);
  --nav-search-chip-fg: hsl(24 30% 34%);
}body.body-mao-nav.page-mao-nav .mao-nav-search-empty__chip[data-tag-tone="4"] {
  --nav-search-chip-bg: hsl(142 38% 91%);
  --nav-search-chip-bg-hover: hsl(142 38% 86%);
  --nav-search-chip-bg-active: hsl(142 38% 83%);
  --nav-search-chip-border: hsl(142 24% 78%);
  --nav-search-chip-border-hover: hsl(142 24% 70%);
  --nav-search-chip-fg: hsl(142 22% 32%);
}body.body-mao-nav.page-mao-nav .mao-nav-search-empty__chip[data-tag-tone="5"] {
  --nav-search-chip-bg: hsl(174 38% 91%);
  --nav-search-chip-bg-hover: hsl(174 38% 86%);
  --nav-search-chip-bg-active: hsl(174 38% 83%);
  --nav-search-chip-border: hsl(174 24% 78%);
  --nav-search-chip-border-hover: hsl(174 24% 70%);
  --nav-search-chip-fg: hsl(174 22% 32%);
}html.dark body.body-mao-nav.page-mao-nav .mao-nav-search-empty__chip[data-tag-tone="0"] {
  --nav-search-chip-bg: hsl(215 24% 22%);
  --nav-search-chip-bg-hover: hsl(215 24% 26%);
  --nav-search-chip-bg-active: hsl(215 24% 28%);
  --nav-search-chip-border: hsl(215 16% 34%);
  --nav-search-chip-border-hover: hsl(215 16% 40%);
  --nav-search-chip-fg: hsl(215 18% 78%);
}html.dark body.body-mao-nav.page-mao-nav .mao-nav-search-empty__chip[data-tag-tone="1"] {
  --nav-search-chip-bg: hsl(262 22% 24%);
  --nav-search-chip-bg-hover: hsl(262 22% 28%);
  --nav-search-chip-bg-active: hsl(262 22% 30%);
  --nav-search-chip-border: hsl(262 14% 36%);
  --nav-search-chip-border-hover: hsl(262 14% 42%);
  --nav-search-chip-fg: hsl(262 16% 80%);
}html.dark body.body-mao-nav.page-mao-nav .mao-nav-search-empty__chip[data-tag-tone="2"] {
  --nav-search-chip-bg: hsl(330 22% 24%);
  --nav-search-chip-bg-hover: hsl(330 22% 28%);
  --nav-search-chip-bg-active: hsl(330 22% 30%);
  --nav-search-chip-border: hsl(330 14% 36%);
  --nav-search-chip-border-hover: hsl(330 14% 42%);
  --nav-search-chip-fg: hsl(330 16% 80%);
}html.dark body.body-mao-nav.page-mao-nav .mao-nav-search-empty__chip[data-tag-tone="3"] {
  --nav-search-chip-bg: hsl(24 24% 24%);
  --nav-search-chip-bg-hover: hsl(24 24% 28%);
  --nav-search-chip-bg-active: hsl(24 24% 30%);
  --nav-search-chip-border: hsl(24 16% 36%);
  --nav-search-chip-border-hover: hsl(24 16% 42%);
  --nav-search-chip-fg: hsl(24 18% 78%);
}html.dark body.body-mao-nav.page-mao-nav .mao-nav-search-empty__chip[data-tag-tone="4"] {
  --nav-search-chip-bg: hsl(142 18% 22%);
  --nav-search-chip-bg-hover: hsl(142 18% 26%);
  --nav-search-chip-bg-active: hsl(142 18% 28%);
  --nav-search-chip-border: hsl(142 12% 34%);
  --nav-search-chip-border-hover: hsl(142 12% 40%);
  --nav-search-chip-fg: hsl(142 14% 76%);
}html.dark body.body-mao-nav.page-mao-nav .mao-nav-search-empty__chip[data-tag-tone="5"] {
  --nav-search-chip-bg: hsl(174 18% 22%);
  --nav-search-chip-bg-hover: hsl(174 18% 26%);
  --nav-search-chip-bg-active: hsl(174 18% 28%);
  --nav-search-chip-border: hsl(174 12% 34%);
  --nav-search-chip-border-hover: hsl(174 12% 40%);
  --nav-search-chip-fg: hsl(174 14% 76%);
}body.body-mao-nav.page-mao-nav .mao-nav-search-summary {
  margin: 0 0 16px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--muted-foreground);
  scroll-margin-top: calc(var(--mao-header-h-mobile, 56px) + var(--nav-scroll-gap, 30px));
}@media (max-width: 999.5px) {
  body.mao-mobile-search-open.body-mao-nav.page-mao-nav .mao-nav-search-summary {
    scroll-margin-top: calc(var(--mao-header-stack-h, 117px) + var(--nav-scroll-gap, 30px));
  }
}@media (min-width: 1000px) {
  body.body-mao-nav.page-mao-nav .part-sidebar.part-sidebar--search-collapsed {
    display: none !important;
  }
  body.body-mao-nav.page-mao-nav .part-main:has(.part-sidebar.part-sidebar--search-collapsed) .main-wrap {
    width: 100% !important;
    max-width: 100% !important;
  }
  body.body-mao-nav.page-mao-nav.page-mao-search .part-main > .container {
    padding-left: 17px !important;
  }
  body.body-mao-nav.page-mao-nav.page-mao-search .part-main .main {
    padding-left: 0 !important;
    padding-right: 15px !important;
  }
  body.body-mao-nav.page-mao-nav.page-mao-search .part-main .main-wrap {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }
  body.body-mao-nav.page-mao-nav.page-mao-search .mao-footer-beian__inner {
    margin-left: 17px !important;
    margin-right: 15px !important;
    width: auto !important;
    max-width: none !important;
  }
}@media (min-width: 1330px) {
  body.body-mao-nav.page-mao-nav.page-mao-search .part-main .main {
    padding-right: 30px !important;
  }
  body.body-mao-nav.page-mao-nav.page-mao-search .mao-footer-beian__inner {
    margin-right: 30px !important;
  }
}@media (min-width: 1660px) {
  body.body-mao-nav.page-mao-nav.page-mao-search .part-main > .container {
    padding-left: 27px !important;
  }
  body.body-mao-nav.page-mao-nav.page-mao-search .mao-footer-beian__inner {
    margin-left: 27px !important;
  }
}/* 切换顶栏 tab 时仅隔离主内容区重绘；勿 contain 侧栏（会破坏 a-fixed 定位） */
html.mao-header-nav-switching body.body-mao-nav.page-mao-nav .part-main .main-wrap {
  contain: layout style paint;
}.h-menus .menu-a, .h-menus .menu-a:hover {
  color: var(--foreground) !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
}@media (min-width: 1330px) {
  .h-menus .menu-a,
  .h-menus .menu-a:hover,
  .header .h-menus .menu-item.menu-item-mm-top .menu-a,
  .header .h-menus .menu-item.menu-item-design .menu-a,
  .header .h-menus .menu-item.menu-item-mm-top .menu-a:hover,
  .header .h-menus .menu-item.menu-item-design .menu-a:hover,
  .header .h-menus .menu-item.menu-item-mm-top:hover .menu-a,
  .header .h-menus .menu-item.menu-item-design:hover .menu-a {
    font-size: 17px !important;
  }
}/* 去掉主导航下拉箭头（原 submenu::before 白三角） */
.h-menus .submenu::before {
  display: none !important;
  content: none !important;
}/*
 * AI 导航顶栏 tab：Awwwards 式悬停 — 无填充底，底部细线自左向右展开
 * （menu-item-mm-top + menu-item-design）
 */
.header .h-menus .menu-item.menu-item-mm-top .menu-a, .header .h-menus .menu-item.menu-item-design .menu-a {
  position: relative !important;
  background-color: transparent !important;
  border-radius: 0 !important;
  text-decoration: none !important;
  letter-spacing: normal !important;
  color: var(--foreground) !important;
  font-size: 16px !important;
  font-weight: 600 !important;
}.header .h-menus .menu-item.menu-item-mm-top .menu-a::after, .header .h-menus .menu-item.menu-item-design .menu-a::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 4px !important;
  height: 2px !important;
  background-color: currentColor !important;
  opacity: 0.85 !important;
  -webkit-transform: scale3d(0, 1, 1) translateZ(0) !important;
  transform: scale3d(0, 1, 1) translateZ(0) !important;
  -webkit-transform-origin: left center !important;
  transform-origin: left center !important;
  -webkit-backface-visibility: hidden !important;
  backface-visibility: hidden !important;
  will-change: transform;
  -webkit-transition: transform 0.38s cubic-bezier(0.22, 1, 0.36, 1) !important;
  transition: transform 0.38s cubic-bezier(0.22, 1, 0.36, 1) !important;
  pointer-events: none !important;
}@media (max-width: 1329.5px) {
  .header .h-menus .menu-item.menu-item-design .menu-a::after {
    bottom: 2px !important;
  }
}@media (min-width: 1330px) {
  .header .h-menus .menu-item.menu-item-design .menu-a::after {
    bottom: 3px !important;
  }
}.header .h-menus .menu-item.menu-item-mm-top .menu-a:hover, .header .h-menus .menu-item.menu-item-design .menu-a:hover, .header .h-menus .menu-item.menu-item-mm-top:hover .menu-a, .header .h-menus .menu-item.menu-item-design:hover .menu-a, .h-menus .menu-item:hover .menu-a {
  color: var(--foreground) !important;
  background-color: transparent !important;
  letter-spacing: normal !important;
  font-size: 16px !important;
  font-weight: 600 !important;
}.header .h-menus .menu-item.menu-item-mm-top .menu-a:hover::after, .header .h-menus .menu-item.menu-item-design .menu-a:hover::after, .header .h-menus .menu-item.menu-item-mm-top:hover .menu-a::after, .header .h-menus .menu-item.menu-item-design:hover .menu-a::after {
  -webkit-transform: scale3d(1, 1, 1) translateZ(0) !important;
  transform: scale3d(1, 1, 1) translateZ(0) !important;
}/* 动态导航当前项（与后台 topNavItemActiveClass 一致：悬停线常显） */
.header .h-menus .menu-item.menu-item-mm-top.mao-header-nav-current .menu-a, .header .h-menus .menu-item.menu-item-mm-top.mao-header-nav-current:hover .menu-a {
  color: var(--foreground) !important;
  background-color: transparent !important;
  letter-spacing: normal !important;
  font-size: 16px !important;
  font-weight: 600 !important;
}.header .h-menus .menu-item.menu-item-mm-top.mao-header-nav-current .menu-a::after, .header .h-menus .menu-item.menu-item-mm-top.mao-header-nav-current:hover .menu-a::after {
  -webkit-transform: scale3d(1, 1, 1) translateZ(0) !important;
  transform: scale3d(1, 1, 1) translateZ(0) !important;
}@media (min-width: 1330px) {
  .header .h-menus .menu-item.menu-item-design .menu-a:hover {
    background-color: transparent !important;
  }
}/*
 * ≥1900：nav shell 对 .part-sidebar 使用 left:auto + margin-left:-177px，
 * 依赖旧版侧栏静态位置；AI 导航页侧栏在 .main 内，该规则会右偏。
 * 与 <1900 一致：相对 .container 左缘 left:0，与顶栏 .wrap-left 对齐。
 */
@media (min-width: 1900px) {
  /*
   * 顶栏与主区 .container 同为 1720 居中，.wrap-left（LOGO 外容器）与 .part-sidebar
   * 均相对各自 container 左缘 left:0，两列左对齐。
   */
  body.body-mao-nav.page-mao-nav .header > .container,
  body.body-mao-nav.page-mao-nav .part-main > .container {
    width: 1720px !important;
    max-width: 1720px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    /* content-box 时 1720 不含 padding-left，外缘左移，与顶栏 .wrap-left 错位 */
    box-sizing: border-box !important;
  }

  body.body-mao-nav .part-main .part-sidebar:not(.a-fixed) {
    left: 0 !important;
    right: auto !important;
    margin-left: 0 !important;
  }

  /* .a-fixed 时 left 由 useSidebarSpy 按 .part-main .container 实测左缘写入 */
  body.body-mao-nav .part-main .part-sidebar.a-fixed {
    right: auto !important;
    margin-left: 0 !important;
  }
}/*
 * AI 导航主卡片圆角：平板 12px、桌面 16px（勿用全局 .p-item .f-box）。
 */
@media (min-width: 750px) and (max-width: 999.5px) {
  .part-item-mao-card.p-item .f-box {
    -webkit-border-radius: 12px !important;
    -moz-border-radius: 12px !important;
    border-radius: 12px !important;
  }
}@media (min-width: 1000px) {
  .part-item-mao-card.p-item .f-box {
    -webkit-border-radius: 16px !important;
    -moz-border-radius: 16px !important;
    border-radius: 16px !important;
  }
}/* AI 导航网址卡片：shadcn --card 表面（窄屏列表行见 max-width:749.5px 透明底） */
@media (min-width: 750px) {
  body.body-mao-nav .part-item-mao-card.p-item .f-box {
    background-color: var(--card) !important;
    color: var(--card-foreground);
    border: none !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    /* 避免 legacy transition:all 导致亮/暗切换时白卡+浅字闪一下 */
    -webkit-transition: none !important;
    transition: none !important;
  }
}/* AI 导航主卡片封面图区域：圆角略小于外层卡片 */
.part-item-mao-card .item-thumb {
  overflow: hidden !important;
  -webkit-border-radius: 6px !important;
  -moz-border-radius: 6px !important;
  border-radius: 6px !important;
}@media (min-width: 750px) and (max-width: 999.5px) {
  .part-item-mao-card .item-thumb {
    -webkit-border-radius: 8px !important;
    -moz-border-radius: 8px !important;
    border-radius: 8px !important;
  }
}@media (min-width: 1000px) {
  .part-item-mao-card .item-thumb {
    -webkit-border-radius: 8px !important;
    -moz-border-radius: 8px !important;
    border-radius: 8px !important;
  }
}.part-item-mao-card .item-thumb .thumb, .part-item-mao-card .item-thumb .thumb.thumb-img, .part-item-mao-card .item-thumb .thumb img, .part-item-mao-card .item-thumb .thumb img.mao-thumb-lqip {
  -webkit-border-radius: inherit !important;
  -moz-border-radius: inherit !important;
  border-radius: inherit !important;
}/* 无封面图：与 .thumb-img 相同 1:1 盒（padding-top:100%）+ 绝对居中首字 */
.part-item-mao-card .item-thumb .thumb.thumb-letter {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  padding-top: 100% !important;
  overflow: hidden !important;
}.part-item-mao-card .item-thumb .thumb.thumb-letter .thumb-letter-in {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-weight: 600 !important;
  /* 勿用 rem：本站 html 在桌面为 100px，rem 会把字放大到超出 64px 封面 */
  font-size: 22px !important;
  line-height: 1 !important;
  color: #fff !important;
  -webkit-user-select: none !important;
  user-select: none !important;
}/* 有封面 URL：1:1 盒 + 中性底（加载中）；栅格图可先显示 LQIP 再换高清 */
.part-item-mao-card .item-thumb .thumb.thumb-img {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  padding-top: 100% !important;
  overflow: hidden !important;
  background-color: #e8eaed !important;
}html.dark .part-item-mao-card .item-thumb .thumb.thumb-img {
  background-color: var(--ai-card-thumb-bg, var(--muted)) !important;
}.part-item-mao-card .item-thumb .thumb.thumb-img img, .part-item-mao-card .item-thumb .thumb.thumb-img img.mao-thumb-lqip {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 100% !important;
  height: 100% !important;
  -o-object-fit: cover !important;
  object-fit: cover !important;
}.part-item-mao-card .item-thumb .thumb.thumb-img img {
  opacity: 0 !important;
  -webkit-transition: opacity 0.22s ease !important;
  transition: opacity 0.22s ease !important;
}.part-item-mao-card .item-thumb .thumb.thumb-img img.mao-thumb-img--visible {
  opacity: 1 !important;
}/* 工具详情 / 相关推荐等同 .thumb 结构，加载完成前隐藏 img；失败时显示内置占位图 */
.thumb.thumb-img img:not(.mao-thumb-img--visible) {
  opacity: 0 !important;
}.thumb.thumb-img img.mao-thumb-img--visible {
  opacity: 1 !important;
}/* 封面加载失败：灰底 + assets/logos/_placeholder.svg */
.part-item-mao-card .item-thumb .thumb.thumb-img.mao-thumb-failed {
  background-color: #e8eaed !important;
}html.dark .part-item-mao-card .item-thumb .thumb.thumb-img.mao-thumb-failed {
  background-color: var(--ai-card-thumb-bg, var(--muted)) !important;
}/* 封面加载完成：去掉灰底，透明 SVG 直接叠在卡片上 */
.part-item-mao-card .item-thumb .thumb.thumb-img.mao-thumb-loaded {
  background-color: transparent !important;
}html.dark .part-item-mao-card .item-thumb .thumb.thumb-img.mao-thumb-loaded {
  background-color: transparent !important;
}.part-item-mao-card .item-thumb .thumb.thumb-img img.mao-thumb-img--bundled-logo {
  -o-object-fit: contain !important;
  object-fit: contain !important;
  padding: 8% !important;
  box-sizing: border-box !important;
  background-color: transparent !important;
}.part-item-mao-card .item-thumb .thumb.thumb-img.mao-thumb-loaded:has(.mao-thumb-img--bundled-logo) {
  background-color: transparent !important;
}.part-item-mao-card .item-thumb .thumb.thumb-img img.mao-thumb-img--svg-poster {
  -o-object-fit: cover !important;
  object-fit: cover !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  background-color: transparent !important;
}.part-item-mao-card .item-thumb .thumb.thumb-img.mao-thumb-loaded:has(.mao-thumb-img--svg-poster) {
  background-color: transparent !important;
}/* 栅格 poster：LQIP 加载成功后再显示模糊预览，灰底由 mao-thumb-pending 保留 */
.part-item-mao-card .item-thumb .thumb.thumb-img img.mao-thumb-lqip,
.thumb.thumb-img img.mao-thumb-lqip {
  z-index: 0 !important;
  opacity: 0 !important;
  -webkit-filter: blur(10px) !important;
  filter: blur(10px) !important;
  -webkit-transform: scale(1.06) !important;
  transform: scale(1.06) !important;
  -webkit-transition: opacity 0.2s ease !important;
  transition: opacity 0.2s ease !important;
}.part-item-mao-card .item-thumb .thumb.thumb-img img.mao-thumb-lqip.mao-thumb-img--visible,
.thumb.thumb-img img.mao-thumb-lqip.mao-thumb-img--visible {
  opacity: 1 !important;
}.part-item-mao-card .item-thumb .thumb.thumb-img.mao-thumb-loaded img.mao-thumb-lqip,
.thumb.thumb-img.mao-thumb-loaded img.mao-thumb-lqip {
  opacity: 0 !important;
  pointer-events: none !important;
}.part-item-mao-card .item-thumb .thumb.thumb-img img:not(.mao-thumb-lqip),
.thumb.thumb-img img:not(.mao-thumb-lqip) {
  z-index: 1 !important;
}/* 后台发布后前台静默刷新提示 */
.mao-nav-update-toast {
  position: fixed !important;
  left: 50% !important;
  bottom: calc(24px + env(safe-area-inset-bottom, 0px)) !important;
  z-index: 10050 !important;
  max-width: min(92vw, 420px) !important;
  padding: 10px 18px !important;
  -webkit-transform: translateX(-50%) !important;
  transform: translateX(-50%) !important;
  -webkit-border-radius: 9999px !important;
  border-radius: 9999px !important;
  background: rgba(32, 33, 36, 0.92) !important;
  color: #fff !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
  text-align: center !important;
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.18) !important;
  pointer-events: none !important;
  -webkit-animation: mao-nav-toast-in 0.24s ease !important;
  animation: mao-nav-toast-in 0.24s ease !important;
}html.dark .mao-nav-update-toast {
  background: rgba(39, 39, 42, 0.96) !important;
  color: #fafafa !important;
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.45) !important;
}@-webkit-keyframes mao-nav-toast-in {
  from {
    opacity: 0;
    -webkit-transform: translateX(-50%) translateY(12px);
    transform: translateX(-50%) translateY(12px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateX(-50%) translateY(0);
    transform: translateX(-50%) translateY(0);
  }
}@keyframes mao-nav-toast-in {
  from {
    opacity: 0;
    -webkit-transform: translateX(-50%) translateY(12px);
    transform: translateX(-50%) translateY(12px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateX(-50%) translateY(0);
    transform: translateX(-50%) translateY(0);
  }
}/* 右下浮动：返回顶部（与卡片同色 --card） */
.part-footer-fixed .gotop {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}
.part-footer-fixed .gotop .go_theme {
  display: none !important;
}
.part-footer-fixed .gotop .go_top {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  -webkit-border-radius: 9999px !important;
  -moz-border-radius: 9999px !important;
  border-radius: 9999px !important;
  background-color: var(--card) !important;
  background-image: none !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  line-height: 0 !important;
  color: var(--card-foreground) !important;
  cursor: pointer !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  -webkit-transition: background-color 0.15s ease, color 0.15s ease !important;
  transition: background-color 0.15s ease, color 0.15s ease !important;
}
.part-footer-fixed .gotop .go_top:hover {
  background-color: color-mix(in oklch, var(--card) 88%, var(--accent)) !important;
  color: var(--card-foreground) !important;
}
.part-footer-fixed .gotop .go_top:active {
  background-color: color-mix(in oklch, var(--card) 82%, var(--accent)) !important;
}
.part-footer-fixed .gotop .go_top .go-top-icon {
  display: block !important;
  width: 28px !important;
  height: 28px !important;
  pointer-events: none !important;
  background-color: var(--muted-foreground) !important;
  -webkit-mask-image: url("/assets/icon/top.svg") !important;
  mask-image: url("/assets/icon/top.svg") !important;
  -webkit-mask-repeat: no-repeat !important;
  mask-repeat: no-repeat !important;
  -webkit-mask-position: center !important;
  mask-position: center !important;
  -webkit-mask-size: contain !important;
  mask-size: contain !important;
}
html.dark .part-footer-fixed .gotop .go_top .go-top-icon {
  background-color: var(--card-foreground) !important;
}/* 列表卡片：去掉悬停上浮与阴影（nav shell：.p-item .f-box:hover、.part-item-mao-card .f-box:hover） */
.p-item .f-box:hover {
  -webkit-transform: none !important;
  -moz-transform: none !important;
  -ms-transform: none !important;
  -o-transform: none !important;
  transform: none !important;
  -webkit-box-shadow: none !important;
  -moz-box-shadow: none !important;
  box-shadow: none !important;
}/* AI 导航卡片：标题/说明/标签（卡片面用 --card-foreground，随亮/暗 --card 切换） */
body.body-mao-nav .part-item-mao-card .item-title, body.body-mao-nav .part-item-mao-card .item-title .title {
  color: var(--card-foreground) !important;
}body.body-mao-nav .part-item-mao-card .item-desc, body.body-mao-nav .part-item-mao-card .f-box:hover .item-desc {
  color: var(--muted-foreground) !important;
}body.body-mao-nav .part-item-mao-card .item-tag {
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}body.body-mao-nav .part-item-mao-card .item-tag .tag:not(.tag-card-highlight), body.body-mao-nav .part-item-mao-card .f-box:hover .item-tag .tag:not(.tag-card-highlight) {
  background-color: var(--muted) !important;
  color: var(--muted-foreground) !important;
  -webkit-border-radius: 4px !important;
  -moz-border-radius: 4px !important;
  border-radius: 4px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  height: 24px !important;
  min-height: 24px !important;
  font-size: 12px !important;
  line-height: 1 !important;
  padding: 0 6px !important;
  white-space: nowrap !important;
  vertical-align: middle !important;
}body.body-mao-nav .part-item-mao-card .item-tag .tag-in {
  display: block !important;
  line-height: 1 !important;
  /* 定稿：flex 24px 居中 + 0.49px 中文光学补偿（0.5px 偏下） */
  -webkit-transform: translateY(0.49px) !important;
  transform: translateY(0.49px) !important;
}/* 列表卡片：单条彩色卖点标签（data-tag-tone 0–7，由 card.id 稳定哈希） */
body.body-mao-nav .part-item-mao-card .item-tag .tag-card-highlight, body.body-mao-nav .part-item-mao-card .f-box:hover .item-tag .tag-card-highlight {
  -webkit-border-radius: 999px !important;
  -moz-border-radius: 999px !important;
  border-radius: 999px !important;
  max-width: 100% !important;
  font-weight: 400 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  height: 24px !important;
  min-height: 24px !important;
  font-size: 12px !important;
  line-height: 1 !important;
  padding: 0 8px !important;
  white-space: nowrap !important;
  vertical-align: middle !important;
  background-color: var(--nav-card-tag-bg, color-mix(in srgb, var(--muted) 88%, transparent)) !important;
  color: var(--nav-card-tag-fg, var(--muted-foreground)) !important;
}body.body-mao-nav .part-item-mao-card .item-tag .tag-card-highlight .tag-in {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
  -o-text-overflow: ellipsis !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  -webkit-transform: none !important;
  transform: none !important;
}body.body-mao-nav .part-item-mao-card .item-tag .tag-card-highlight[data-tag-tone="0"] {
  --nav-card-tag-bg: color-mix(in srgb, hsl(215 42% 52%) 10%, transparent);
  --nav-card-tag-fg: hsl(215 28% 38%);
}body.body-mao-nav .part-item-mao-card .item-tag .tag-card-highlight[data-tag-tone="1"] {
  --nav-card-tag-bg: color-mix(in srgb, hsl(262 38% 56%) 10%, transparent);
  --nav-card-tag-fg: hsl(262 24% 40%);
}body.body-mao-nav .part-item-mao-card .item-tag .tag-card-highlight[data-tag-tone="2"] {
  --nav-card-tag-bg: color-mix(in srgb, hsl(330 38% 54%) 10%, transparent);
  --nav-card-tag-fg: hsl(330 24% 40%);
}body.body-mao-nav .part-item-mao-card .item-tag .tag-card-highlight[data-tag-tone="3"] {
  --nav-card-tag-bg: color-mix(in srgb, hsl(24 52% 52%) 10%, transparent);
  --nav-card-tag-fg: hsl(24 30% 38%);
}body.body-mao-nav .part-item-mao-card .item-tag .tag-card-highlight[data-tag-tone="4"] {
  --nav-card-tag-bg: color-mix(in srgb, hsl(142 32% 42%) 10%, transparent);
  --nav-card-tag-fg: hsl(142 22% 34%);
}body.body-mao-nav .part-item-mao-card .item-tag .tag-card-highlight[data-tag-tone="5"] {
  --nav-card-tag-bg: color-mix(in srgb, hsl(174 32% 42%) 10%, transparent);
  --nav-card-tag-fg: hsl(174 22% 34%);
}body.body-mao-nav .part-item-mao-card .item-tag .tag-card-highlight[data-tag-tone="6"] {
  --nav-card-tag-bg: color-mix(in srgb, hsl(43 46% 48%) 11%, transparent);
  --nav-card-tag-fg: hsl(43 28% 36%);
}body.body-mao-nav .part-item-mao-card .item-tag .tag-card-highlight[data-tag-tone="7"] {
  --nav-card-tag-bg: color-mix(in srgb, hsl(350 38% 52%) 10%, transparent);
  --nav-card-tag-fg: hsl(350 24% 40%);
}html.dark body.body-mao-nav .part-item-mao-card .item-tag .tag-card-highlight[data-tag-tone="0"] {
  --nav-card-tag-bg: color-mix(in srgb, hsl(215 38% 58%) 13%, transparent);
  --nav-card-tag-fg: hsl(215 18% 72%);
}html.dark body.body-mao-nav .part-item-mao-card .item-tag .tag-card-highlight[data-tag-tone="1"] {
  --nav-card-tag-bg: color-mix(in srgb, hsl(262 34% 62%) 13%, transparent);
  --nav-card-tag-fg: hsl(262 16% 74%);
}html.dark body.body-mao-nav .part-item-mao-card .item-tag .tag-card-highlight[data-tag-tone="2"] {
  --nav-card-tag-bg: color-mix(in srgb, hsl(330 34% 58%) 13%, transparent);
  --nav-card-tag-fg: hsl(330 16% 74%);
}html.dark body.body-mao-nav .part-item-mao-card .item-tag .tag-card-highlight[data-tag-tone="3"] {
  --nav-card-tag-bg: color-mix(in srgb, hsl(24 42% 56%) 13%, transparent);
  --nav-card-tag-fg: hsl(24 18% 74%);
}html.dark body.body-mao-nav .part-item-mao-card .item-tag .tag-card-highlight[data-tag-tone="4"] {
  --nav-card-tag-bg: color-mix(in srgb, hsl(142 28% 48%) 13%, transparent);
  --nav-card-tag-fg: hsl(142 14% 72%);
}html.dark body.body-mao-nav .part-item-mao-card .item-tag .tag-card-highlight[data-tag-tone="5"] {
  --nav-card-tag-bg: color-mix(in srgb, hsl(174 28% 46%) 13%, transparent);
  --nav-card-tag-fg: hsl(174 14% 72%);
}html.dark body.body-mao-nav .part-item-mao-card .item-tag .tag-card-highlight[data-tag-tone="6"] {
  --nav-card-tag-bg: color-mix(in srgb, hsl(43 38% 52%) 14%, transparent);
  --nav-card-tag-fg: hsl(43 16% 74%);
}html.dark body.body-mao-nav .part-item-mao-card .item-tag .tag-card-highlight[data-tag-tone="7"] {
  --nav-card-tag-bg: color-mix(in srgb, hsl(350 34% 56%) 13%, transparent);
  --nav-card-tag-fg: hsl(350 16% 74%);
}.p-item .item-title, .p-item .item-title .title {
  color: var(--foreground) !important;
}.p-item .item-desc, .p-item .f-box:hover .item-desc {
  color: var(--muted-foreground) !important;
}/* 分区主标题（nav shell：.c-title .l strong { color:#000 }） */
body.body-mao-nav.page-mao-nav .part-cat-block .c-title .l strong, body.body-mao-nav.page-mao-nav .part-cat-block .c-title .l strong a {
  color: var(--foreground) !important;
}/* 分区标题下分割线（nav shell：.c-title:after { background-color:#F1F4F9 }）— 勿与 .c-title flex 同组，否则 ::after 参与换行呈灰条 */
body.body-mao-nav.page-mao-nav .part-cat-block .c-title::after {
  background-color: var(--border) !important;
}

/* 分区标题 + 右侧子分类（px 定尺：勿用 Tailwind rem，html 根字号为 100px） */
body.body-mao-nav.page-mao-nav .part-cat-block .c-title {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  flex-wrap: nowrap !important;
  height: auto !important;
  min-height: 26px !important;
  line-height: normal !important;
}body.body-mao-nav.page-mao-nav .part-cat-block .c-title .l {
  flex: 0 1 auto !important;
  min-width: 0 !important;
}body.body-mao-nav.page-mao-nav .part-cat-block .c-title .mao-section-group-nav {
  flex: 0 1 auto !important;
  min-width: 0 !important;
  max-width: min(100%, 720px) !important;
  display: flex !important;
  justify-content: flex-end !important;
}body.body-mao-nav.page-mao-nav .part-cat-block .c-title .mao-section-group-nav__scroll {
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 4px;
  overflow-x: auto;
  max-width: 100%;
  justify-content: flex-end;
  scrollbar-width: none;
  -ms-overflow-style: none;
  -webkit-overflow-scrolling: touch;
  padding: 1px 0;
}body.body-mao-nav.page-mao-nav .part-cat-block .c-title .mao-section-group-nav__scroll::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}body.body-mao-nav.page-mao-nav
  .part-cat-block
  .c-title
  .mao-section-group-nav__pill {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  pointer-events: none;
  border-radius: 999px !important;
  background-color: var(--sidebar-primary, var(--secondary)) !important;
  transform: translate3d(0, 0, 0);
  will-change: transform, width, height;
}body.body-mao-nav.page-mao-nav
  .part-cat-block
  .c-title
  button.mao-section-group-nav__badge {
  position: relative;
  z-index: 1;
  display: inline-flex !important;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  height: 24px !important;
  min-height: 24px !important;
  padding: 0 10px !important;
  margin: 0;
  border: none !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: var(--muted-foreground) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  white-space: nowrap;
  cursor: pointer;
  font-family: inherit;
  box-shadow: none !important;
  -webkit-appearance: none;
  appearance: none;
  transition: color 0.04s ease;
}@media (hover: hover) {
  body.body-mao-nav.page-mao-nav
    .part-cat-block
    .c-title
    button.mao-section-group-nav__badge:hover:not(.is-active):not([aria-current="true"]) {
    background: var(--sidebar-accent, var(--accent)) !important;
    color: var(--sidebar-accent-foreground, var(--accent-foreground)) !important;
  }
}body.body-mao-nav.page-mao-nav
  .part-cat-block
  .c-title
  button.mao-section-group-nav__badge.is-active,
body.body-mao-nav.page-mao-nav
  .part-cat-block
  .c-title
  button.mao-section-group-nav__badge[aria-current="true"] {
  background: transparent !important;
  color: var(--sidebar-primary-foreground, var(--primary-foreground)) !important;
  font-weight: 600 !important;
  box-shadow: none !important;
  line-height: 24px !important;
}body.body-mao-nav.page-mao-nav
  .part-cat-block
  .c-title
  button.mao-section-group-nav__badge:focus-visible {
  outline: 2px solid var(--ring);
  outline-offset: 2px;
}@media (max-width: 999.5px) {
  body.body-mao-nav.page-mao-nav .part-cat-block .c-title {
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    height: auto !important;
    min-height: 0 !important;
    line-height: normal !important;
    margin-bottom: 12px !important;
    padding-bottom: 0 !important;
    border-bottom: none !important;
    gap: 8px !important;
  }

  body.body-mao-nav.page-mao-nav .part-cat-block .c-title::after {
    display: none !important;
    content: none !important;
    height: 0 !important;
    max-height: 0 !important;
    background: none !important;
    border: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
  }

  body.body-mao-nav.page-mao-nav .part-cat-block .c-title .mao-section-group-nav {
    flex: 1 1 auto !important;
    justify-content: flex-end !important;
    margin-top: 0 !important;
    max-width: min(100%, 720px) !important;
  }

  body.body-mao-nav.page-mao-nav
    .part-cat-block
    .c-title
    .mao-section-group-nav__scroll {
    justify-content: flex-end;
    width: auto;
    max-width: 100%;
    padding: 1px 0 !important;
    gap: 4px !important;
  }

  /* 换行时子分类独占一行并右对齐（标题左 / Tab 右，与桌面一致用胶囊 pill） */
  body.body-mao-nav.page-mao-nav
    .part-cat-block
    .c-title
    .mao-section-group-nav__pill {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: none !important;
  }

  body.body-mao-nav.page-mao-nav
    .part-cat-block
    .c-title
    button.mao-section-group-nav__badge,
  body.body-mao-nav.page-mao-nav
    .part-cat-block
    .c-title
    button.mao-section-group-nav__badge.is-active,
  body.body-mao-nav.page-mao-nav
    .part-cat-block
    .c-title
    button.mao-section-group-nav__badge[aria-current="true"] {
    border-bottom: none !important;
  }
}

/* 亮/暗切换：瞬时换色，禁止过渡中间态 */
html.mao-theme-switching, html.mao-theme-switching * {
  -webkit-transition: none !important;
  transition: none !important;
}html, body {
  -webkit-transition: background-color 0s, color 0s !important;
  transition: background-color 0s, color 0s !important;
}

@media (min-width: 750px) {
  html.dark body.body-mao-nav .part-item-mao-card.p-item .f-box {
    background-color: var(--card) !important;
    color: var(--card-foreground) !important;
  }
}html.dark body.body-mao-nav .part-item-mao-card .item-title, html.dark body.body-mao-nav .part-item-mao-card .item-title .title, html.dark body.body-mao-nav .part-item-mao-card .item-desc, html.dark body.body-mao-nav .part-item-mao-card .f-box:hover .item-desc {
  color: var(--card-foreground) !important;
}html.dark body.body-mao-nav .part-item-mao-card .item-desc, html.dark body.body-mao-nav .part-item-mao-card .f-box:hover .item-desc {
  color: var(--muted-foreground) !important;
}html.dark body.body-mao-nav .part-item-mao-card .item-tag .tag:not(.tag-card-highlight), html.dark body.body-mao-nav .part-item-mao-card .f-box:hover .item-tag .tag:not(.tag-card-highlight) {
  background-color: var(--muted) !important;
  color: var(--muted-foreground) !important;
}/*
 * 卡片标题悬停：--foreground 色波浪线 + 横向流动
 */
/* 方案 A：桌面标题块预留波浪槽位；窄屏不预留 */
@media (min-width: 750px) {
  .p-item .item-title {
    padding-bottom: 8px !important;
    box-sizing: border-box !important;
  }
}.part-item-mao-card .item-title {
  white-space: nowrap !important;
  overflow: hidden !important;
  -o-text-overflow: ellipsis !important;
  text-overflow: ellipsis !important;
  margin-bottom: 0 !important;
}/* 桌面网格：标题居中；窄屏与主题一致左对齐（勿用全局 center !important，否则会盖住 nav shell 的 max-width:749.5px 规则） */
@media (min-width: 750px) {
  .part-item-mao-card .item-title {
    text-align: center !important;
  }
}@media (max-width: 749.5px) {
  /*
   * nav shell：.part-cat-block { background-color:#fff }（max-width:749.5px）
   * 小屏分区外框须随 --card，避免暗色下仍白底托深色网址卡。
   */
  body.body-mao-nav.page-mao-nav .part-cat-block {
    background-color: var(--card) !important;
    color: var(--card-foreground) !important;
  }

  body.body-mao-nav.page-mao-nav .part-cat-block .c-title {
    gap: 14px !important;
    margin-bottom: 20px !important;
  }

  /* 子分类左对齐：与 client/src/section-group-nav.css @749.5px 镜像 */
  body.body-mao-nav.page-mao-nav .part-cat-block .c-title .mao-section-group-nav {
    flex: 1 1 100% !important;
    justify-content: flex-start !important;
    margin-top: 2px !important;
  }

  body.body-mao-nav.page-mao-nav
    .part-cat-block
    .c-title
    .mao-section-group-nav__scroll {
    width: 100% !important;
    justify-content: flex-start !important;
  }

  body.body-mao-nav.page-mao-nav .part-cat-block .c-content {
    padding-top: 6px !important;
  }

  body.body-mao-nav.page-mao-nav .part-cat-block .c-title .a-more {
    text-align: left !important;
  }

  /*
   * AI 导航列表行：左 LOGO 顶对齐，右栏标题/说明/标签左对齐同列。
   * 间距：row-gap 控标题↔说明；item-desc margin-bottom 仅拉开说明↔标签（legacy margin 已清零）。
   */
  body.body-mao-nav .part-item-mao-card.p-item {
    margin-bottom: 12px !important;
  }

  body.body-mao-nav.page-mao-nav .part-item-mao-card.p-item .f-box {
    display: grid !important;
    grid-template-columns: 50px minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto !important;
    -webkit-column-gap: 20px !important;
    column-gap: 20px !important;
    row-gap: 4px !important;
    align-items: start !important;
    align-content: start !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 0 12px 0 !important;
    position: relative !important;
    background-color: transparent !important;
    background-image: none !important;
    color: var(--card-foreground) !important;
    -webkit-border-radius: 0 !important;
    -moz-border-radius: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  body.body-mao-nav .part-item-mao-card .item-thumb {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    grid-column: 1 !important;
    grid-row: 1 / span 3 !important;
    align-self: start !important;
    width: 50px !important;
    margin: 0 !important;
  }

  body.body-mao-nav .part-item-mao-card .item-title {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
    text-align: left !important;
    min-height: 0 !important;
    line-height: 1.35 !important;
  }

  body.body-mao-nav .part-item-mao-card .item-title .title {
    line-height: 1.35 !important;
    font-weight: 600 !important;
    max-width: 100% !important;
  }

  body.body-mao-nav .part-item-mao-card .item-desc {
    grid-column: 2 !important;
    grid-row: 2 !important;
    align-self: start !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 6px !important;
    margin-top: 0 !important;
    text-align: left !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: calc(1.45em * 2) !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
    color: var(--muted-foreground) !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  body.body-mao-nav .part-item-mao-card .item-tag {
    grid-column: 2 !important;
    grid-row: 3 !important;
    align-self: start !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    text-align: left !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    gap: 4px 6px !important;
  }

  body.body-mao-nav .part-item-mao-card .item-tag .tag {
    margin: 0 !important;
  }
}/* 卡片：预览区下方（标题 / 描述 / 标签）整块居中 */
/* 与 nav shell 中 .item-ico { vertical-align: top }对齐，禁止 hover 时行盒高度抖动 */
.p-item .title {
  display: inline-block !important;
  vertical-align: top !important;
  position: relative !important;
  z-index: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
  -webkit-box-decoration-break: clone !important;
  box-decoration-break: clone !important;
}.p-item .f-box:hover .title {
  text-decoration: none !important;
}/*
 * hover 波浪线：mask 形状 + --ai-title-wave（shadcn --card-foreground，随亮/暗切换）
 */
.p-item .f-box:hover .title::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 1px !important;
  width: calc(100% + 160px) !important;
  height: 12px !important;
  background-color: var(--ai-title-wave, var(--card-foreground)) !important;
  background-image: none !important;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 12'%3E%3Cpath d='M0 6 Q10 2 20 6 T40 6 T80 6 T120 6 T160 6' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 12'%3E%3Cpath d='M0 6 Q10 2 20 6 T40 6 T80 6 T120 6 T160 6' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  -webkit-mask-repeat: repeat-x !important;
  mask-repeat: repeat-x !important;
  -webkit-mask-position: 0 50% !important;
  mask-position: 0 50% !important;
  -webkit-mask-size: 160px 12px !important;
  mask-size: 160px 12px !important;
  -webkit-animation: mao-ai-wave-shift 1s linear infinite !important;
  animation: mao-ai-wave-shift 1s linear infinite !important;
  pointer-events: none !important;
}@-webkit-keyframes mao-ai-wave-shift {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(-160px, 0, 0);
    transform: translate3d(-160px, 0, 0);
  }
}@keyframes mao-ai-wave-shift {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(-160px, 0, 0);
    transform: translate3d(-160px, 0, 0);
  }
}@media (prefers-reduced-motion: reduce) {
  .p-item .f-box:hover .title::after {
    -webkit-animation: none !important;
    animation: none !important;
  }
}

/* 窄屏 / 触摸：禁用卡片标题 hover 波浪与 legacy 下划线，避免误触像删除线 */
@media (hover: none), (max-width: 749.5px) {
  body.body-mao-nav .part-item-mao-card.p-item .f-box:hover .title::after,
  body.body-mao-nav .part-item-mao-card.p-item .f-box:active .title::after,
  body.body-mao-nav .part-item-mao-card.p-item .f-box .title::after {
    content: none !important;
    display: none !important;
    background: none !important;
    -webkit-mask-image: none !important;
    mask-image: none !important;
  }

  body.body-mao-nav .part-item-mao-card.p-item .f-box:hover .title,
  body.body-mao-nav .part-item-mao-card.p-item .f-box:active .title,
  body.body-mao-nav .part-item-mao-card.p-item .f-box .title {
    text-decoration: none !important;
  }

  body.body-mao-nav .part-item-mao-card.p-item .item-title,
  body.body-mao-nav .part-item-mao-card .item-title {
    padding-bottom: 0 !important;
  }
}/* 窄屏：顶栏右侧汉堡 + 搜索 */
.header .mao-nav-toggle {
  display: none !important;
}
@media (min-width: 1000px) {
  .header .mao-mobile-search-toggle {
    display: none !important;
  }
}
@media (max-width: 999.5px) {
  .header .mao-nav-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: center !important;
    flex-shrink: 0 !important;
    box-sizing: border-box !important;
    width: 44px !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 8px !important;
    background: transparent !important;
    cursor: pointer !important;
    -webkit-tap-highlight-color: transparent !important;
    color: var(--foreground) !important;
  }

  .header .mao-nav-toggle:focus-visible {
    outline: 2px solid var(--ring) !important;
    outline-offset: 2px !important;
  }

  body.mao-mobile-drawer-open {
    overflow: hidden !important;
  }

  .mao-mobile-drawer {
    display: none;
    position: fixed;
    left: 0;
    right: 0;
    top: var(--mao-header-h-mobile, 56px);
    bottom: 0;
    z-index: 50;
    pointer-events: none;
  }

  .mao-mobile-drawer.is-open {
    display: block;
    pointer-events: auto;
  }

  .mao-mobile-drawer-backdrop {
    position: absolute;
    inset: 0;
    background: var(--ai-overlay-scrim);
  }

  .mao-mobile-drawer-panel {
    position: absolute;
    inset: 0;
    background: var(--popover);
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    display: flex;
    flex-direction: column;
  }

  .mao-mobile-drawer-nav {
    flex: 1;
    padding: 0 0 24px;
  }

  .mao-mobile-drawer-section {
    padding: 14px 16px 8px;
    font-size: 12px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--ai-fg-55);
    font-weight: 600;
  }

  .mao-drawer-row {
    display: block;
    padding: 14px 16px;
    border-bottom: 1px solid var(--border);
    background: var(--accent);
    color: var(--accent-foreground) !important;
    text-decoration: none !important;
    font-size: 15px;
  }

  .mao-drawer-row:active {
    background: var(--muted);
    color: var(--muted-foreground) !important;
  }

  .mao-drawer-row.is-current {
    position: relative;
    font-weight: 600;
    color: var(--accent-foreground) !important;
    background: var(--accent);
  }

  .mao-drawer-row.is-current::after {
    content: "" !important;
    position: absolute !important;
    left: 16px !important;
    right: 16px !important;
    bottom: 0 !important;
    height: 2px !important;
    background-color: var(--primary) !important;
    opacity: 0.85 !important;
    pointer-events: none !important;
  }

  .mao-mobile-drawer-empty {
    margin: 24px 16px;
    font-size: 14px;
    color: var(--ai-fg-50);
  }
}@media (min-width: 1000px) {
  .mao-mobile-drawer {
    display: none !important;
  }
}/* 极简备案页脚；顶线做法同 awwwards .footer__bottom（gradient + 8px 单元），画在 inner 上不通栏 */
.mao-footer-beian {
  --mao-footer-beian-line-gap: 28px;
  margin: 0;
  padding: 16px 0 var(--mao-footer-beian-line-gap);
  border-top: none;
  background-color: var(--secondary);
  font-size: 12px;
  line-height: 1.5;
  color: var(--ai-fg-55);
  text-align: center;
}/*
 * 虚线横向范围对齐主内容区（nav shell）：
 * - 小屏：与 .part-cats-loop {margin:0 10px}（max-width:749.5px）同宽
 * - 中屏（无侧栏）：与 .main 15px gutter + .main-wrap max 1660 同宽
 * - 宽屏（有侧栏）：左缘 = 侧栏 .sidebar-menu padding-left（17→27）相对容器左缘；右缘 = main-wrap 右缘（卡片栅格）
 * 侧栏/非侧栏用 body 的 page-* 类区分（不用 :has()，避免部分内核整条规则作废 → 虚线又通栏）
 */
.mao-footer-beian__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 10px 14px;
  box-sizing: border-box;
  margin-left: auto;
  margin-right: auto;
  padding: var(--mao-footer-beian-line-gap) 0 0;
  background-image: linear-gradient(
    to right,
    var(--foreground) 0 10%,
    transparent 10%
  );
  background-size: 8px 1px;
  background-repeat: repeat-x;
  background-position: 0 0;
}@media (max-width: 749.5px) {
  .mao-footer-beian__inner {
    width: calc(100% - 20px);
    max-width: none;
  }
}@media (min-width: 750px) and (max-width: 999.5px) {
  .mao-footer-beian__inner {
    width: calc(100vw - 30px);
    max-width: 1660px;
  }
}/* 1000–1329：container pad-left 170 + main 15 */
@media (min-width: 1000px) and (max-width: 1329.5px) {
  body.body-mao-nav .mao-footer-beian__inner,
  body.page-book .mao-footer-beian__inner,
  body.page-goods .mao-footer-beian__inner {
    margin-left: calc(
      185px + max(0px, (100vw - 200px - min(1660px, 100vw - 200px)) / 2)
    );
    margin-right: auto;
    width: min(1660px, 100vw - 200px);
    max-width: none;
  }
}/* 1330–1659：pad 170 + main 30 */
@media (min-width: 1330px) and (max-width: 1659.5px) {
  body.body-mao-nav .mao-footer-beian__inner,
  body.page-book .mao-footer-beian__inner,
  body.page-goods .mao-footer-beian__inner {
    margin-left: calc(
      200px + max(0px, (100vw - 230px - min(1660px, 100vw - 230px)) / 2)
    );
    margin-right: auto;
    width: min(1660px, 100vw - 230px);
    max-width: none;
  }
}/* 1660–1899：pad 180；有侧栏时 pill 左 27 */
@media (min-width: 1660px) and (max-width: 1899.5px) {
  body.body-mao-nav .mao-footer-beian__inner,
  body.page-book .mao-footer-beian__inner,
  body.page-goods .mao-footer-beian__inner {
    margin-left: calc(
      210px + max(0px, (100vw - 240px - min(1660px, 100vw - 240px)) / 2)
    );
    margin-right: auto;
    width: min(1660px, 100vw - 240px);
    max-width: none;
  }
}/* ≥1900：容器 1720 居中 */
@media (min-width: 1900px) {
  body.body-mao-nav .mao-footer-beian__inner,
  body.page-book .mao-footer-beian__inner,
  body.page-goods .mao-footer-beian__inner {
    margin-left: calc((100vw - 1720px) / 2 + 210px);
    margin-right: auto;
    width: 1480px;
    max-width: none;
  }
}.mao-footer-beian__copy {
  white-space: nowrap;
}.mao-footer-beian__police-row {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
}.mao-footer-beian__link, .mao-footer-beian__police {
  --mao-footer-ul-opacity: 0.55;
  position: relative !important;
  color: var(--ai-fg-55) !important;
  text-decoration: none !important;
  display: inline-block;
  white-space: nowrap;
  vertical-align: baseline;
  -webkit-transition: color 0.25s ease !important;
  transition: color 0.25s ease !important;
}/* 下划线：inherit 字色 + 独立 opacity，贴近 color-mix 半透明文案观感 */
.mao-footer-beian__link::after, .mao-footer-beian__police::after {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 0 !important;
  border: none !important;
  color: inherit !important;
  border-bottom: 1px solid currentColor !important;
  background: none !important;
  opacity: var(--mao-footer-ul-opacity) !important;
  -webkit-transform: scaleX(0) !important;
  transform: scaleX(0) !important;
  -webkit-transform-origin: left center !important;
  transform-origin: left center !important;
  -webkit-transition:
    -webkit-transform 0.38s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.25s ease !important;
  transition:
    transform 0.38s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.25s ease !important;
  pointer-events: none !important;
}.mao-footer-beian__link:hover, .mao-footer-beian__police:hover {
  --mao-footer-ul-opacity: 0.78;
  color: var(--ai-fg-78) !important;
  background-color: transparent !important;
  text-decoration: none !important;
}.mao-footer-beian__link:hover::after, .mao-footer-beian__police:hover::after {
  -webkit-transform: scaleX(1) !important;
  transform: scaleX(1) !important;
}/* 暗色：虚线变淡；链接默认与版权同色，hover 变亮 */
html.dark .mao-footer-beian__inner {
  --mao-footer-beian-dash: color-mix(in oklch, var(--foreground) 26%, transparent);
  background-image: linear-gradient(
    to right,
    var(--mao-footer-beian-dash) 0 10%,
    transparent 10%
  );
}html.dark .mao-footer-beian__link, html.dark .mao-footer-beian__police {
  color: var(--ai-fg-55) !important;
}html.dark .mao-footer-beian__link:hover, html.dark .mao-footer-beian__police:hover {
  color: var(--ai-fg-78) !important;
}.mao-footer-beian__badge {
  display: block;
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}/* AI 导航主卡片：隐藏城市/地区标签（icon-local），保留业务类型标签 */
.part-item-mao-card .item-tag > .tag:has(.icon-local) {
  display: none !important;
}/* Sidebar section icons — <img src> Lucide SVGs（勿用 mask：与 React 组件不一致会只剩灰块） */
.sidebar-menu .menu-a .in .ico-img {
  display: inline-block;
  width: 14px;
  height: 14px;
  min-width: 14px;
  min-height: 14px;
  vertical-align: -0.1em;
  margin-right: 0;
  flex-shrink: 0;
  object-fit: contain;
  opacity: 0.72;
  background-color: transparent;
  -webkit-mask: none;
  mask: none;
}

.sidebar-menu .menu-a:hover .in .ico-img {
  opacity: 1;
}

/* Active pill: text is white; Lucide <img> must invert too. */
body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu .menu-a.active .in .ico-img {
  opacity: 1;
  filter: brightness(0) invert(1);
}

html.dark .sidebar-menu .menu-a .in .ico-img {
  filter: brightness(0) invert(1);
}/* SEO 导语：留在 HTML 供爬虫/LLM 读，不在首屏展示（与 .mao-site-home-h1 一致） */
.mao-seo-intro {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}/*
 * 禁用 legacy shell 注入的 .sidebar-menu-scrollbar（4px 灰条在侧栏左缘）。
 * Mac 上 hover 时易误显为「分割线」；AI 导航侧栏由 useSidebarSpy 的 pill + 原生滚动负责。
 */
body.body-mao-nav .part-sidebar .sidebar-menu-scrollbar,
body.body-mao-nav .part-sidebar .sidebar-menu-scrollbar .block {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}/* 暗色：LOGO 下方侧栏列与页底同色（避免 legacy 黑条/白条） */
@media (min-width: 1000px) {
  html.dark body.body-mao-nav.page-mao-nav .part-main .part-sidebar,
  html.dark body.body-mao-nav.page-mao-nav .part-main .part-sidebar .sidebar-menu-wrap,
  html.dark body.body-mao-nav.page-mao-nav .part-main .part-sidebar .sidebar-menu {
    background-color: var(--secondary) !important;
  }
}/* 侧栏：44px 胶囊（22px + round）；选中 pill / hover 白底 */
body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu ul.menu {
  position: relative;
  --mao-sidebar-nav-h: 44px;
}body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu .mao-sidebar-nav-pill, body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu .menu-a {
  border-radius: 22px !important;
}body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu .mao-sidebar-nav-pill {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 0;
  pointer-events: none;
  background-color: var(--sidebar-primary);
  transform: translate3d(0, 0, 0);
  will-change: transform, height;
}body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu .menu-a {
  display: flex !important;
  align-items: center !important;
  box-sizing: border-box !important;
  height: var(--mao-sidebar-nav-h, 44px) !important;
  padding: 0 16px !important;
  font-size: 14px;
  position: relative;
  z-index: 1;
  color: var(--sidebar-foreground);
  background-color: transparent !important;
  outline: none !important;
  box-shadow: none !important;
  transition: color 0.04s ease;
}body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu .menu-a .in {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  line-height: 20px;
}body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu .menu-a:hover:not(.active) {
  background-color: var(--sidebar-accent) !important;
  color: var(--sidebar-accent-foreground) !important;
}body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu.mao-sidebar-pill-animating .menu-a:hover:not(.active) {
  background-color: transparent !important;
  color: var(--sidebar-foreground) !important;
}body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu .menu-a.mao-sidebar-click-pending,
body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu .menu-a.mao-sidebar-click-pending:hover {
  background-color: transparent !important;
  color: var(--sidebar-foreground) !important;
}body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu .menu-a.mao-sidebar-click-pending:hover .in .ico-img {
  opacity: 0.72;
  filter: none;
}html.dark body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu .menu-a.mao-sidebar-click-pending:hover .in .ico-img {
  filter: brightness(0) invert(1);
}body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu .menu-a.active.mao-sidebar-click-pending,
body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu .menu-a.active.mao-sidebar-click-pending:hover {
  color: var(--sidebar-primary-foreground) !important;
}body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu .menu-a.active.mao-sidebar-click-pending .in .ico-img,
body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu .menu-a.active.mao-sidebar-click-pending:hover .in .ico-img {
  opacity: 1;
  filter: brightness(0) invert(1);
}body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu .menu-a:focus, body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu .menu-a:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}body.body-mao-nav.page-mao-nav .part-sidebar .sidebar-menu .menu-a.active {
  background-color: transparent !important;
  color: var(--sidebar-primary-foreground) !important;
  transition: none !important;
}/* 顶栏 AI/DESIGN 切换：选中项直接白字，不做黑→白过渡 */
html.mao-sidebar-nav-instant
  body.body-mao-nav.page-mao-nav
  .part-sidebar
  .sidebar-menu
  .menu-a {
  transition: none !important;
}

/* === top-banner-slot.css (mirror) === */
.mao-top-banner-slot {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-shrink: 0;
  width: 100%;
  padding-top: 100px;
  padding-bottom: 30px;
  box-sizing: border-box;
  background: var(--secondary);
}

.mao-top-banner-slot__inner {
  width: 100%;
  max-width: 1720px;
  margin: 0 auto;
  padding: 0 12px;
  box-sizing: border-box;
}

.mao-top-banner-slot__title {
  margin: 0;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.28;
  letter-spacing: -0.02em;
  color: var(--foreground);
}

.mao-top-banner-slot__title-line {
  display: block;
}

.mao-top-banner-slot__subtitle {
  margin: 15px 0 0;
  max-width: 36em;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.65;
  color: var(--muted-foreground);
}

@media (min-width: 750px) {
  .mao-top-banner-slot__inner {
    padding: 0 17px;
  }

  .mao-top-banner-slot__title {
    font-size: 44px;
    line-height: 1.24;
  }
}

@media (min-width: 1000px) {
  .mao-top-banner-slot__title {
    font-size: 56px;
    line-height: 1.18;
  }

  .mao-top-banner-slot__subtitle {
    margin-top: 22px;
    font-size: 18px;
  }
}

@media (min-width: 1660px) {
  .mao-top-banner-slot__inner {
    padding: 0 27px;
  }
}

@media (min-width: 1900px) {
  body.body-mao-nav.page-mao-nav .mao-top-banner-slot__inner {
    width: 1720px;
    max-width: 1720px;
  }
}

/* === sidebar-banner-adapt.css (mirror) === */
@media (min-width: 1000px) {
  body.body-mao-nav.page-mao-nav .part-main .part-sidebar.a-fixed {
    top: var(
      --mao-sidebar-fixed-top,
      calc(64px + var(--nav-scroll-gap, 30px))
    ) !important;
    max-height: calc(
      100dvh - var(--mao-sidebar-fixed-top, calc(64px + var(--nav-scroll-gap, 30px)))
    );
    max-height: calc(
      100vh - var(--mao-sidebar-fixed-top, calc(64px + var(--nav-scroll-gap, 30px)))
    );
    overflow: hidden;
  }

  body.body-mao-nav.page-mao-nav .part-main .part-sidebar.a-fixed .sidebar-menu-wrap {
    max-height: inherit;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
}

/* === nav-card-actions.css === */
/**
 * 导航卡片 hover 双按钮（cardInteraction: dual）
 * 依赖 body[data-card-interaction="dual"]
 * 桌面 (hover: hover) + (pointer: fine) + ≥750px：hover 滑出双按钮
 * 窄屏 / 触摸：短按外链/详情，长按或右键气泡；iPad ≥750px 接鼠标同桌面
 */

body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item {
  overflow: hidden;
}

body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item .f-box,
body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item .mao-nav-card-shell {
  position: relative;
  overflow: hidden;
  text-decoration: none !important;
  color: inherit;
}

body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item .mao-nav-card-body .item-desc {
  position: relative;
  z-index: 1;
}

body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-actions {
  display: flex;
  gap: 8px;
  padding: 10px 12px 12px;
  box-sizing: border-box;
  position: relative;
  isolation: isolate;
  background: var(--card);
}

body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-actions--hover::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 100%;
  height: 34px;
  background: linear-gradient(to bottom, transparent 0%, var(--card) 100%);
  pointer-events: none;
  z-index: -1;
}

body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-action,
body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-action--detail,
body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-action--direct {
  position: relative;
  z-index: 1;
  flex: 1 1 0;
  min-width: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 0 10px;
  border: 1px solid var(--border);
  border-radius: 9999px;
  background: var(--card);
  color: var(--foreground) !important;
  -webkit-text-fill-color: var(--foreground);
  font-size: 13px;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none !important;
  white-space: nowrap;
  cursor: pointer;
  transition:
    background-color 0.15s ease,
    border-color 0.15s ease,
    color 0.15s ease;
}

body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-action:hover:not(.is-disabled),
body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-action:focus-visible:not(.is-disabled),
body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-action:active:not(.is-disabled) {
  background: var(--muted);
  border-color: var(--border);
  color: var(--foreground) !important;
  -webkit-text-fill-color: var(--foreground);
}

body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item .f-box:hover .mao-nav-card-action,
body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item:focus-within .mao-nav-card-action {
  color: var(--foreground) !important;
  -webkit-text-fill-color: var(--foreground);
}

body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-action.is-disabled {
  opacity: 0.42;
  cursor: not-allowed;
}

body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-action:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px color-mix(in oklch, var(--ring) 50%, transparent);
}

/* 桌面宽屏：flex 卡片 + hover 滑出（≥750px 才启用，避免缩窗到手机宽度时列表 hover 错乱） */
@media (hover: hover) and (pointer: fine) and (min-width: 750px) {
  body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item .f-box,
  body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item .mao-nav-card-shell {
    display: flex;
    flex-direction: column;
    height: 100%;
  }

  body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item .mao-nav-card-body {
    flex: 1 1 auto;
    min-height: 0;
  }

  body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-actions--hover {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    transform: translate3d(0, 100%, 0);
    opacity: 0;
    pointer-events: none;
    transition:
      transform 0.22s cubic-bezier(0.22, 1, 0.36, 1),
      opacity 0.22s cubic-bezier(0.22, 1, 0.36, 1);
  }

  body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item:hover .mao-nav-card-actions--hover,
  body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item:focus-within .mao-nav-card-actions--hover {
    transform: translate3d(0, 0, 0);
    opacity: 1;
    pointer-events: auto;
  }

  body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item:hover .item-tag,
  body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item:focus-within .item-tag {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.18s ease, visibility 0.18s ease;
  }

  body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-more {
    display: none;
  }
}

/* 窄屏 / 触摸：隐藏 hover 滑出按钮，走短按/长按/右键 */
@media (max-width: 749.5px), (hover: none), (pointer: coarse) {
  body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-actions--hover {
    display: none !important;
  }

  body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item .mao-nav-card-shell,
  body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item .mao-nav-card-shell--compact {
    -webkit-touch-callout: none;
    cursor: pointer;
    overflow: visible;
  }

  body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-more {
    position: absolute;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    min-width: 32px;
    min-height: 32px;
    max-width: 32px;
    max-height: 32px;
    flex: none;
    padding: 0;
    margin: 0;
    border: none;
    border-radius: 0;
    background: transparent;
    color: color-mix(in oklch, var(--foreground) 48%, transparent);
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.02em;
    cursor: pointer;
    box-shadow: none;
    overflow: visible;
    box-sizing: border-box;
    transition: color 0.15s ease, opacity 0.15s ease;
  }

  body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-more:hover {
    color: color-mix(in oklch, var(--foreground) 68%, transparent);
    background: transparent;
  }

  body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-more:active {
    color: color-mix(in oklch, var(--foreground) 78%, transparent);
    opacity: 1;
  }

  body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-more.is-open {
    color: color-mix(in oklch, var(--foreground) 78%, transparent);
    opacity: 1;
  }

  body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-more:focus-visible {
    outline: none;
    box-shadow: none;
    color: color-mix(in oklch, var(--foreground) 68%, transparent);
  }
}

/* 触摸平板卡片网格：按钮在卡片右上角，文案留安全间距 */
@media (min-width: 750px) and (hover: none),
  (min-width: 750px) and (pointer: coarse) {
  body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-more {
    top: 8px;
    right: 8px;
  }

  body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item .mao-nav-card-shell {
    padding-right: 12px !important;
    box-sizing: border-box !important;
  }

  body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item .item-title,
  body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item .item-desc {
    padding-right: 36px !important;
    box-sizing: border-box !important;
  }
}

/* 手机列表：body 不参与 grid；⋯ 固定在该行右上角 */
@media (max-width: 749.5px) {
  body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item {
    overflow: visible;
  }

  body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item .mao-nav-card-body {
    display: contents;
  }

  body.body-mao-nav[data-card-interaction="dual"] .part-item-mao-card.p-item .mao-nav-card-shell {
    height: auto !important;
    min-height: 0 !important;
    padding-right: 44px !important;
    box-sizing: border-box !important;
  }

  body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-more {
    top: 0;
    right: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.body-mao-nav[data-card-interaction="dual"] .mao-nav-card-actions--hover {
    transition: none;
  }

  .mao-nav-card-menu {
    animation: none !important;
  }
}

/* 上下文菜单（图二风格：深色竖向列表） */
.mao-nav-card-menu {
  position: fixed;
  z-index: 10050;
  min-width: 168px;
  padding: 6px;
  border: none;
  border-radius: 12px;
  background: #2c2c2e;
  color: #f5f5f7;
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.28);
  overflow: hidden;
  transform-origin: var(--menu-ox, 100%) var(--menu-oy, 0%);
  animation: mao-nav-card-menu-in 0.2s cubic-bezier(0.2, 0.9, 0.3, 1) both;
}

.mao-nav-card-menu-item {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 44px;
  padding: 0 12px;
  border: none;
  border-radius: 8px;
  background: transparent;
  color: #f5f5f7 !important;
  -webkit-text-fill-color: #f5f5f7;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.2;
  text-decoration: none !important;
  white-space: nowrap;
  cursor: pointer;
  box-sizing: border-box;
  transition: background-color 0.15s ease;
}

.mao-nav-card-menu-item:hover:not(.is-disabled),
.mao-nav-card-menu-item:focus-visible:not(.is-disabled) {
  background: rgba(255, 255, 255, 0.1);
  outline: none;
}

.mao-nav-card-menu-item.is-disabled {
  opacity: 0.42;
  cursor: not-allowed;
}

.mao-nav-card-menu-icon {
  width: 18px;
  height: 18px;
  flex: none;
  color: #d1d1d6;
  stroke-width: 2px;
}

@keyframes mao-nav-card-menu-in {
  0% {
    opacity: 0;
    transform: scale(0.88);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

