/* ===== AI 工具导航侧栏（来自 ai.duososo.com，主站融合版） =====
 * 桌面端（≥1200px）：贴左 fixed 全高侧栏，body 预留同宽左内边距，不遮挡内容。
 * 窄屏/手机（<1200px）：默认收起（translateX(-100%)），由左下角悬浮按钮唤起，
 *   抽屉式滑入 + 遮罩，点击遮罩/侧栏外区域/Esc 关闭，与 ai.duososo.com 交互一致。
 * 所有条目单行显示，超长省略号。类名统一 ais- 前缀，避免与主站样式冲突。 */
:root{--ais-w:228px;--ais-line:#e3e9f2;--ais-ink:#172033;--ais-muted:#5d687b;--ais-brand:#1769d2}

.ais{position:fixed;left:0;top:0;bottom:0;z-index:60;width:var(--ais-w);display:none;flex-direction:column;
  background:#fff;border-right:1px solid var(--ais-line);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;
  font:14px/1.55 "PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",system-ui,sans-serif;color:var(--ais-ink);
  scrollbar-width:thin;scrollbar-color:#cfd9e6 transparent}
.ais::-webkit-scrollbar{width:6px}
.ais::-webkit-scrollbar-thumb{background:#cfd9e6;border-radius:3px}

/* 顶部品牌位：点击回 ai.duososo.com 首页 */
.ais-brand{display:flex;align-items:center;gap:9px;flex:none;padding:14px 14px 11px;color:var(--ais-ink);
  text-decoration:none;border-bottom:1px solid #edf1f7}
.ais-brand:hover{color:var(--ais-brand);text-decoration:none}
.ais-brand-ico{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:9px;
  background:linear-gradient(135deg,#1769d2,#079b91);color:#fff;font-size:15px;font-weight:800}
.ais-brand b{display:block;font-size:15px;font-weight:800;line-height:1.3}
.ais-brand small{display:block;color:var(--ais-muted);font-size:11.5px;line-height:1.3}

/* 分类列表：单行文字 + 省略号，数量右对齐 */
.ais ul{list-style:none;margin:0;padding:6px 8px}
.ais li a{display:flex;align-items:center;gap:8px;min-width:0;padding:7px 9px;border-radius:8px;color:#39445a;
  text-decoration:none;white-space:nowrap}
.ais li a:hover{background:#f2f7fd;color:var(--ais-brand);text-decoration:none}
.ais-ico{flex:0 0 20px;width:20px;text-align:center;font-style:normal;font-size:14px}
.ais-tt{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ais-n{flex:none;margin-left:auto;font-size:11.5px;color:#93a0b4;font-variant-numeric:tabular-nums}

/* 底部提交入口 */
.ais-submit{flex:none;margin:8px 12px 14px;padding:9px;border:1px dashed #b9cbe8;border-radius:9px;text-align:center;
  color:var(--ais-brand);font-weight:650;text-decoration:none;white-space:nowrap}
.ais-submit:hover{background:#eaf3ff;text-decoration:none;border-color:#8fb6e8}

/* 抽屉遮罩 + 悬浮按钮（仅窄屏） */
.ais-backdrop{position:fixed;inset:0;z-index:110;background:rgba(23,32,51,.45);opacity:0;visibility:hidden;
  transition:opacity .2s ease,visibility .2s ease}
.ais-fab{position:fixed;left:14px;bottom:16px;z-index:90;display:none;align-items:center;gap:7px;min-height:42px;
  padding:0 15px;border:1px solid #d5deea;border-radius:999px;background:#fff;color:var(--ais-ink);
  font:700 14px/1 "PingFang SC","Microsoft YaHei",system-ui,sans-serif;box-shadow:0 6px 20px rgba(23,50,90,.16);
  cursor:pointer}
.ais-fab:hover{border-color:var(--ais-brand);color:var(--ais-brand)}
.ais-fab i{font-style:normal;font-size:15px}

/* 桌面端：侧栏常驻，页面整体让位 */
@media (min-width:1200px){
  body:has(#aiSide){padding-left:var(--ais-w)}
  body.ais-ready{padding-left:var(--ais-w)}
  .ais{display:flex}
}
/* 窄屏/手机：抽屉模式 */
@media (max-width:1199.98px){
  body:has(#aiSide) .ais-fab,body.ais-ready .ais-fab{display:inline-flex}
  .ais{display:flex;width:min(84vw,300px);transform:translateX(-100%);transition:transform .22s ease;
    box-shadow:none;border-right:0}
  body.ais-open .ais{transform:none;box-shadow:6px 0 24px rgba(20,40,80,.18);border-right:1px solid var(--ais-line)}
  body.ais-open .ais-backdrop{opacity:1;visibility:visible}
}
@media (prefers-reduced-motion:reduce){
  .ais,.ais-backdrop{transition:none}
}
