/* ==========================================================================
   ZERO-JS AURORA HYPNO-ENGINE v4.0 (极光洗脑引擎 - 绝对高亮 GUI 覆盖版)
   - 禁止暗色：神圣极光白与堕落深红/霓虹蓝交织的玻璃态质感
   - 物理级 HTML 压缩适应，无限伪元素与纯 CSS SVG 注入
   - 全方位接管平台底座、侧边栏、流式滚动区域与富文本美化
========================================================================== */

/* --------------------------------------------------------------------------
   PART 1: 平台底层全局暴力覆写 (Absolute Readability & Luminous Aesthetics)
-------------------------------------------------------------------------- */
.bg-gray-100\/90.relative.inline-block {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(240, 249, 255, 0.92)) !important;
  backdrop-filter: blur(25px) !important;
  border: 2px solid rgba(186, 230, 253, 0.85) !important;
  border-radius: 20px !important;
  box-shadow: 0 15px 40px rgba(14, 165, 233, 0.08), inset 0 0 25px rgba(244, 114, 182, 0.1) !important;
  margin-bottom: 30px !important;
  padding: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  position: relative !important;
  z-index: 10 !important;
  overflow: visible !important;
}
.bg-gray-100\/90.relative.inline-block::after {
  content: ""; position: absolute; inset: -4px; border-radius: 24px;
  background: linear-gradient(120deg, transparent, rgba(56, 189, 248, 0.6), rgba(244, 114, 182, 0.5), transparent);
  background-size: 300% 100%; animation: z-flow 5s linear infinite;
  z-index: -1; pointer-events: none;
}
.bg-gray-100\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\/90) {
  border-color: rgba(251, 207, 232, 0.9) !important;
  box-shadow: 0 10px 30px rgba(244, 114, 182, 0.12) !important;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(253, 242, 248, 0.92)) !important;
}

/* 核心文本绝对可读性保障 */
.markdown-body {
  color: #0f172a !important; /* 极深灰蓝，绝非纯黑，护眼且高对比 */
  font-family: 'PingFang SC', 'SF Pro Text', 'Microsoft YaHei', sans-serif !important;
  font-size: 17.5px !important;
  line-height: 2.1 !important;
  font-weight: 600 !important;
  letter-spacing: 0.8px !important;
  padding: 8px !important;
  text-shadow: none !important;
}

/* 移除官方碍眼色带 */
[class*="bg-[#F1CBCB]"], [class*="bg-[#c9e1e9]"] { display: none !important; }

/* 顶部与底部栏高亮琉璃态覆写 */
.sticky.w-full.top-0.flex.items-center {
  background: rgba(255, 255, 255, 0.92) !important;
  backdrop-filter: blur(15px) !important;
  border-bottom: 2px solid rgba(186, 230, 253, 0.6) !important;
  box-shadow: 0 5px 25px rgba(2, 132, 199, 0.05) !important;
}
#ai-chat-bottom-input {
  background: rgba(255, 255, 255, 0.98) !important;
  border: 2px solid #bae6fd !important;
  border-radius: 18px !important;
  box-shadow: 0 8px 30px rgba(14, 165, 233, 0.12) !important;
  transition: all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
}
#ai-chat-bottom-input:focus-within {
  border-color: #f472b6 !important;
  box-shadow: 0 10px 35px rgba(236, 72, 153, 0.2) !important;
  transform: translateY(-3px) !important;
}
#ai-chat-input { color: #0f172a !important; font-weight: 700 !important; font-size: 16px !important; }
#ai-chat-input::placeholder { color: #94a3b8 !important; }
#ai-chat-input::selection { background: #fbcfe8 !important; color: #be185d !important; }
#ai-mod-button2 button.MuiButton-root {
  background: linear-gradient(135deg, #e0f2fe, #fce7f3) !important;
  color: #0284c7 !important; border: 1px solid #bae6fd !important;
  border-radius: 12px !important; font-weight: 800 !important; transition: 0.3s !important;
}
#ai-mod-button2 button.MuiButton-root:hover {
  background: #fbcfe8 !important; color: #be185d !important; transform: scale(1.06) !important;
}
.text-orange-500 { color: #e11d48 !important; font-weight: 900 !important; }

/* 华丽加载动画 (圣洁眼眸形态) */
.style_dot-flashing__8L91Q, .style_text__zGhNq { display: none !important; }
.flex.items-center.justify-center.w-6.h-5 { position: relative !important; width: 60px !important; height: 60px !important; }
.flex.items-center.justify-center.w-6.h-5::before {
  content: ""; position: absolute; inset: 0;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M10 50 C30 20, 70 20, 90 50 C70 80, 30 80, 10 50 Z' fill='none' stroke='%2338bdf8' stroke-width='4' stroke-dasharray='30 10'/%3E%3Ccircle cx='50' cy='50' r='15' fill='%23f472b6' opacity='0.8'/%3E%3Ccircle cx='50' cy='50' r='5' fill='%23ffffff'/%3E%3C/svg%3E") no-repeat center/contain;
  animation: z-spin-pulse 2.5s cubic-bezier(0.4, 0, 0.2, 1) infinite;
}

/* --------------------------------------------------------------------------
   PART 2: 正文视口与叙事骨架 (主信息流排版)
-------------------------------------------------------------------------- */

/* 思维链 (CoT) 默认折叠，技术黑箱感 */
.C { background: #f8fafc; border: 1px solid #cbd5e1; border-radius: 14px; margin: 15px 20px; overflow: hidden; box-shadow: 0 4px 10px rgba(0,0,0,0.03); }
.C .s { padding: 14px 18px; background: linear-gradient(90deg, #f1f5f9, #ffffff); cursor: pointer; list-style: none; display: flex; align-items: center; font-size: 14px; font-weight: 900; color: #475569; user-select: none; border-bottom: 2px solid transparent; }
.C .s::-webkit-details-marker { display: none; }
.C .i0 { width: 22px; height: 22px; margin-right: 10px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2364748b'%3E%3Cpath d='M12 2L9 4H11L10 6L12 7L10 8L11 10H9L8 12L7 10H5L6 8L4 7L6 6L5 4H7L8 2Z' stroke='%2364748b' stroke-width='1.5'/%3E%3C/svg%3E") center/cover; transition: transform 0.5s ease; }
.C[open] .i0 { transform: rotate(180deg); }
.C[open] .s { border-bottom-color: #cbd5e1; color: #0f172a; }
.C think { display: block; padding: 16px; font-family: 'Cascadia Code', monospace; font-size: 13.5px; color: #334155; background: #ffffff; white-space: pre-wrap; line-height: 1.7; }

/* 仪表盘环境 (Env) - 玻璃流光 */
.E { display: flex; gap: 12px; margin: 0 20px 15px; }
.E .e { flex: 1; background: linear-gradient(135deg, rgba(240,249,255,0.8), rgba(255,255,255,0.9)); border: 1px solid #7dd3fc; border-radius: 12px; padding: 12px; display: flex; align-items: center; position: relative; overflow: hidden; box-shadow: 0 4px 12px rgba(2,132,199,0.06); }
.E .e::after { content: ""; position: absolute; inset: 0; background: linear-gradient(120deg, transparent, rgba(255,255,255,0.9), transparent); transform: translateX(-100%); animation: z-shine 3s infinite; }
.E .i { width: 24px; height: 24px; margin-right: 10px; flex-shrink: 0; }
.i-tm { background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230284c7' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 6v6l4 2'/%3E%3C/svg%3E") center/cover; }
.i-lc { background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230ea5e9' stroke-width='2'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E") center/cover; }
.i-wt { background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2338bdf8' stroke-width='2'%3E%3Cpath d='M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9z'/%3E%3C/svg%3E") center/cover; }
.E .el { display: flex; flex-direction: column; }
.E b { font-size: 11px; font-weight: 900; color: #0284c7; letter-spacing: 1.5px; text-transform: uppercase; }
.E span { font-size: 14.5px; font-weight: 800; color: #0f172a; white-space: nowrap; }

/* 突发新闻/系统涌现 (News) */
.N { margin: 0 20px 15px; background: #fff1f2; border-left: 4px solid #e11d48; border-radius: 8px; padding: 12px; display: flex; align-items: center; color: #be185d; font-weight: 800; font-size: 14px; animation: z-pulse 2s infinite alternate; box-shadow: 0 2px 10px rgba(225,29,72,0.1); }
.i-nw { width: 20px; height: 20px; margin-right: 10px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e11d48' stroke-width='2'%3E%3Cpath d='M22 17H2a3 3 0 0 0 3-3V9a7 7 0 0 1 14 0v5a3 3 0 0 0 3 3zm-8.27 4a2 2 0 0 1-3.46 0'/%3E%3C/svg%3E") center/cover; }

/* 豪华正文阅读框 (T-box) */
.T-box {
  background: rgba(255, 255, 255, 0.98); backdrop-filter: blur(10px);
  border-top: 2px solid #bae6fd; border-bottom: 2px solid #bae6fd;
  padding: 25px 25px 40px; margin: 0 0 20px;
  position: relative; overflow-y: auto; max-height: 65vh;
  scrollbar-width: thin; scrollbar-color: #7dd3fc transparent;
}
.T-box text { display: block; text-indent: 2em; font-size: 17.5px; line-height: 2.2; color: #1e293b; text-align: justify; letter-spacing: 0.5px; }

/* --------------------------------------------------------------------------
   PART 3: 全功能悬浮侧边栏 (Zero-JS Fixed Sidebar)
-------------------------------------------------------------------------- */
/* 触发器与遮罩 */
.K { position: fixed; inset: 0; background: rgba(15, 23, 42, 0.3); backdrop-filter: blur(5px); z-index: 99990; opacity: 0; visibility: hidden; transition: 0.4s; cursor: pointer; }
#tg:checked ~ .K { opacity: 1; visibility: visible; }
.B {
  position: fixed; right: 0; top: 40%; width: 44px; height: 110px;
  background: linear-gradient(180deg, #0ea5e9, #ec4899);
  border: 2px solid #ffffff; border-right: none; border-radius: 16px 0 0 16px;
  box-shadow: -6px 0 25px rgba(236, 72, 153, 0.4);
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; z-index: 99999; transition: 0.3s cubic-bezier(0.2,0.8,0.2,1);
}
.B:hover { width: 50px; background: linear-gradient(180deg, #38bdf8, #f472b6); }
.i-sw { width: 26px; height: 26px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.5'%3E%3Cpath d='M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4M10 17l5-5-5-5M15 12H3'/%3E%3C/svg%3E") center/cover; animation: z-float 2s infinite alternate; }

/* 侧边栏本体 */
.S {
  position: fixed; right: 0; top: 0; bottom: 0; width: 420px; max-width: 88vw;
  background: rgba(255, 255, 255, 0.95); backdrop-filter: blur(30px);
  border-left: 2px solid rgba(244, 114, 182, 0.6); box-shadow: -20px 0 50px rgba(2, 132, 199, 0.15);
  z-index: 99999; transform: translateX(105%); transition: 0.5s cubic-bezier(0.2, 0.8, 0.2, 1);
  display: flex; flex-direction: column; overflow: hidden;
}
#tg:checked ~ .S { transform: translateX(0); }

/* 侧边栏头部与内容区 */
.H1 { font-size: 28px; font-weight: 900; color: #ec4899; letter-spacing: 2px; text-shadow: 2px 2px 0 rgba(56, 189, 248, 0.2); text-align: center; margin-top: 30px; }
.H2 { font-size: 10px; color: #64748b; letter-spacing: 6px; text-align: center; margin: 5px 0 20px; font-family: monospace; }
.L { flex: 1; overflow-y: auto; padding: 10px 20px 40px; scrollbar-width: none; }
.L::-webkit-scrollbar { display: none; }

/* --------------------------------------------------------------------------
   PART 4: 侧边栏 UI 模块组件池 (极致复用)
-------------------------------------------------------------------------- */
/* 卡片容器 (.c) 与 标题栏 (.s) */
.c { background: #ffffff; border: 2px solid #e2e8f0; border-radius: 14px; margin-bottom: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.03); transition: 0.3s; overflow: hidden; }
.c:hover { border-color: #7dd3fc; box-shadow: 0 8px 30px rgba(14,165,233,0.15); transform: translateY(-2px); }
.c .s { padding: 14px 16px; background: linear-gradient(90deg, #f8fafc, #ffffff); font-size: 15px; font-weight: 900; color: #1e293b; cursor: pointer; list-style: none; display: flex; align-items: center; border-bottom: 2px solid transparent; letter-spacing: 0.5px; }
.c .s::-webkit-details-marker { display: none; }
.c[open] .s { border-bottom-color: #bae6fd; background: linear-gradient(90deg, #f0f9ff, #ffffff); color: #0284c7; }
.c .b { padding: 16px; background: #ffffff; animation: z-in 0.4s cubic-bezier(0.2,0.8,0.2,1); display: flex; flex-direction: column; gap: 12px; }

/* 键值对网格 (.g, .r, .k) -> attr() 魔法 */
.g { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.r { background: linear-gradient(90deg, #f1f5f9, #ffffff); border-left: 3px solid #38bdf8; padding: 8px 12px; border-radius: 0 8px 8px 0; display: flex; flex-direction: column; }
.r::before { content: attr(k); font-size: 11.5px; font-weight: 900; color: #0284c7; margin-bottom: 3px; text-transform: uppercase; }
.r { font-size: 14px; font-weight: 700; color: #0f172a; }

/* 纯 CSS 动态图表 / 进度条 (.p, .pb, .pf, .pt) */
.p { display: flex; flex-direction: column; gap: 6px; position: relative; }
.p b::before { content: attr(k); font-size: 12px; font-weight: 900; color: #334155; }
.pb { width: 100%; height: 18px; background: #e2e8f0; border-radius: 9px; overflow: hidden; box-shadow: inset 0 2px 5px rgba(0,0,0,0.1); position: relative; }
.pf { height: 100%; border-radius: 9px; animation: z-bar 1.5s cubic-bezier(0.2,0.8,0.2,1) forwards; position: relative; }
.pf::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent, rgba(255,255,255,0.5), transparent); animation: z-shine 2s infinite; }
.pt { position: absolute; right: 0; top: 0; font-size: 11px; font-weight: 900; color: #0284c7; }
/* 进度条主题色 */
.f-hypno { background: linear-gradient(90deg, #c084fc, #d946ef); } /* 催眠粉紫 */
.f-lust { background: linear-gradient(90deg, #f472b6, #e11d48); }  /* 情欲红 */
.f-tech { background: linear-gradient(90deg, #38bdf8, #0284c7); }  /* 科技蓝 */
.f-warn { background: linear-gradient(90deg, #fbbf24, #ea580c); }  /* 警告橙 */
.f-team { background: linear-gradient(90deg, #34d399, #059669); }  /* 战队绿 */

/* 长文本/描述 (.dx) 与 分区块 (.d) */
.dx { font-size: 14px; color: #475569; line-height: 1.7; background: #f8fafc; padding: 12px; border-radius: 8px; border: 1px dashed #cbd5e1; }
.d { display: flex; flex-direction: column; gap: 10px; background: #f8fafc; padding: 12px; border-radius: 10px; border: 1px solid #e2e8f0; }
.dk { font-size: 13px; font-weight: 900; color: #0f172a; border-bottom: 2px solid #cbd5e1; padding-bottom: 4px; }

/* 列表行 (.li) 与 标签 (.t-b, .t) */
.li { background: #ffffff; border: 1px solid #e2e8f0; padding: 10px; border-radius: 8px; display: flex; align-items: center; gap: 10px; transition: 0.3s; }
.li:hover { border-color: #38bdf8; transform: translateX(4px); }
.li b { background: #e2e8f0; padding: 4px 8px; border-radius: 6px; font-size: 12px; color: #0f172a; font-weight: 900; white-space: nowrap; }
.li span { font-size: 13.5px; color: #334155; font-weight: 700; line-height: 1.5; }
.t-b { display: flex; flex-wrap: wrap; gap: 8px; }
.t { background: #fee2e2; border: 1px solid #fca5a5; color: #b91c1c; padding: 4px 10px; border-radius: 6px; font-size: 12px; font-weight: 800; }
.t.g1 { background: #fef9c3; border-color: #fde047; color: #a16207; }
.t.d1 { background: #f1f5f9; border-color: #cbd5e1; color: #475569; }

/* 警告框 (.w-b) 与 代码审计 (.cd) */
.w-b { background: #fef2f2; color: #be185d; padding: 12px; border: 2px solid #fda4af; border-radius: 8px; font-weight: 900; font-size: 14px; text-align: center; animation: z-pulse 1.5s infinite alternate; }
.cd { background: #0f172a; color: #38bdf8; font-family: 'Cascadia Code', monospace; font-size: 13px; padding: 14px; border-radius: 10px; line-height: 1.6; box-shadow: inset 0 2px 10px rgba(0,0,0,0.5); border-left: 4px solid #d946ef; word-break: break-all; }

/* 记忆/数据表格 (.tb) */
.tb { width: 100%; border-collapse: collapse; font-size: 13px; }
.tb th { background: #f1f5f9; color: #1e293b; padding: 10px; text-align: left; border-bottom: 2px solid #cbd5e1; font-weight: 900; }
.tb td { padding: 10px; border-bottom: 1px solid #f1f5f9; color: #334155; font-weight: 700; line-height: 1.5; }

/* 交互行动卡片 (.o-l, .o-i) */
.o-l { display: flex; flex-direction: column; gap: 10px; }
.o-i { background: linear-gradient(135deg, #ffffff, #fdf4ff); border: 2px solid #e879f9; padding: 12px; border-radius: 10px; display: flex; align-items: center; cursor: pointer; transition: 0.3s; }
.o-i:hover { transform: translateX(8px); box-shadow: 4px 4px 0px #f0abfc; border-color: #d946ef; }
.o-i b { background: #d946ef; color: #ffffff; width: 28px; height: 28px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 14px; font-weight: 900; margin-right: 12px; flex-shrink: 0; box-shadow: 0 2px 8px rgba(217,70,239,0.4); }
.o-i span { font-size: 14.5px; font-weight: 800; color: #4a044e; }

/* --------------------------------------------------------------------------
   PART 5: 矢量图标库 (纯 CSS 内联 SVG，禁止 HTML 冗余)
-------------------------------------------------------------------------- */
.i { width: 22px; height: 22px; margin-right: 12px; display: inline-block; flex-shrink: 0; background-position: center; background-size: cover; }
.i1 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230284c7' stroke-width='2'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E"); } /* User */
.i2 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e11d48' stroke-width='2'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z'/%3E%3C/svg%3E"); } /* Target */
.i3 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23059669' stroke-width='2'%3E%3Cpath d='M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M23 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E"); } /* NPC */
.i4 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d946ef' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z'/%3E%3Cpath d='M2 12h20'/%3E%3C/svg%3E"); } /* APP Core */
.i5 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238b5cf6' stroke-width='2'%3E%3Cpath d='M10 3H6a2 2 0 0 0-2 2v14c0 1.1.9 2 2 2h4M16 17l5-5-5-5M19.8 12H9'/%3E%3C/svg%3E"); } /* Skills */
.i6 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230891b2' stroke-width='2'%3E%3Cpolygon points='12 2 2 7 12 12 22 7 12 2'/%3E%3Cpolyline points='2 17 12 22 22 17'/%3E%3Cpolyline points='2 12 12 17 22 12'/%3E%3C/svg%3E"); } /* Squad */
.i7 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='2'%3E%3Cpath d='M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3Cpolyline points='9 22 9 12 15 12 15 22'/%3E%3C/svg%3E"); } /* Base */
.i8 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f59e0b' stroke-width='2'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6M15 3h6v6M10 14L21 3'/%3E%3C/svg%3E"); } /* Network */
.i9 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2310b981' stroke-width='2'%3E%3Cpath d='M4 22h14a2 2 0 0 0 2-2V7.5L14.5 2H6a2 2 0 0 0-2 2v4'/%3E%3Cpolyline points='14 2 14 8 20 8'/%3E%3Cpath d='M2 15h10M9 18l3-3-3-3'/%3E%3C/svg%3E"); } /* Arc */
.i10 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ef4444' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' y1='8' x2='12' y2='12'/%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'/%3E%3C/svg%3E"); } /* Mission */
.i11 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236366f1' stroke-width='2'%3E%3Crect x='2' y='3' width='20' height='14' rx='2' ry='2'/%3E%3Cline x1='8' y1='21' x2='16' y2='21'/%3E%3Cline x1='12' y1='17' x2='12' y2='21'/%3E%3C/svg%3E"); } /* Inventory */
.i12 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233b82f6' stroke-width='2'%3E%3Cpath d='M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5'/%3E%3C/svg%3E"); } /* Gear */
.i13 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ea580c' stroke-width='2'%3E%3Cpath d='M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z'/%3E%3Cline x1='12' y1='9' x2='12' y2='13'/%3E%3Cline x1='12' y1='17' x2='12.01' y2='17'/%3E%3C/svg%3E"); } /* Alert */
.i14, .i15 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238b5cf6' stroke-width='2'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4M7 10l5 5 5-5M12 15V3'/%3E%3C/svg%3E"); } /* LTM/STM */
.i16 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpolyline points='4 17 10 11 4 5'/%3E%3Cline x1='12' y1='19' x2='20' y2='19'/%3E%3C/svg%3E"); } /* Logs */
.i17 { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23db2777' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpolygon points='10 8 16 12 10 16 10 8'/%3E%3C/svg%3E"); } /* Actions */

/* --------------------------------------------------------------------------
   PART 6: 纯 CSS 动画引擎与自适应规则
-------------------------------------------------------------------------- */
@keyframes z-spin-pulse { 0% { transform: rotate(0deg) scale(0.9); } 50% { transform: rotate(180deg) scale(1.1); } 100% { transform: rotate(360deg) scale(0.9); } }
@keyframes z-shine { 100% { transform: translateX(100%); } }
@keyframes z-flow { 0% { background-position: 0% 50%; } 100% { background-position: 200% 50%; } }
@keyframes z-pulse { 0% { opacity: 0.8; box-shadow: 0 0 10px rgba(225,29,72,0.1); } 100% { opacity: 1; box-shadow: 0 0 25px rgba(225,29,72,0.4); } }
@keyframes z-in { 0% { opacity: 0; transform: translateY(-10px); } 100% { opacity: 1; transform: translateY(0); } }
@keyframes z-bar { 0% { width: 0%; } }
@keyframes z-float { 0% { transform: translateY(-2px); } 100% { transform: translateY(2px); } }

/* 移动端全量适配 (底吸式抽屉) */
@media (max-width: 768px) {
  .T-box { max-height: 75vh; padding: 20px 15px; border-left: none; border-right: none; border-radius: 0; }
  .T-box text { font-size: 16px; }
  .S {
    width: 100%; max-width: 100%; height: 85vh; top: auto; bottom: 0;
    border-left: none; border-top: 3px solid #f472b6; border-radius: 25px 25px 0 0;
    transform: translateY(105%); box-shadow: 0 -15px 40px rgba(0,0,0,0.15);
  }
  #tg:checked ~ .S { transform: translateY(0); }
  .B {
    top: auto; bottom: 35px; right: 0; height: 90px; width: 48px;
    border-radius: 16px 0 0 16px; background: linear-gradient(180deg, #f472b6, #e11d48);
  }
  .g { grid-template-columns: 1fr; gap: 8px; } /* 移动端单列排版 */
}
