/* 第③步：视觉升级（只加不删）——排版层次 / 卡片 / 表格 / 按钮 / 图标 / 首屏 / 移动端。主色紫，辅色 青·琥珀·玫红·天蓝，浅色底，正文对比度 ≥7:1 */
:root{--v-pri:#6d28d9;--v-pri2:#5b21b6;--v-teal:#0f766e;--v-amber:#b45309;--v-rose:#be123c;--v-sky:#0369a1;--v-ink:#1e1b4b;--v-line:#e4def7;--v-soft:#f6f3ff}
html{scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;background:#fcfbff;color:#1e293b;-webkit-font-smoothing:antialiased}
/* 文字对比度：浅灰档整体压深一档 */
.text-slate-400{color:#526075 !important}.text-slate-500{color:#475569 !important}.text-slate-600{color:#334155 !important}
/* —— 顶栏 —— */
header.sticky{background:rgba(255,255,255,.92) !important;border-bottom:1px solid var(--v-line) !important;box-shadow:0 6px 24px -18px rgba(76,29,149,.55)}
header.sticky::after{content:"";display:block;height:3px;background:linear-gradient(90deg,#6d28d9,#0f766e 34%,#d97706 66%,#be123c)}
header.sticky nav a{border-radius:999px !important;font-weight:600}
header.sticky nav a:hover{background:var(--v-soft) !important;color:var(--v-pri2) !important}
header.sticky nav a.bg-blue-50{background:linear-gradient(135deg,#ede9fe,#f5f3ff) !important;box-shadow:inset 0 0 0 1px #ddd6fe}
header.sticky img{box-shadow:0 0 0 2px #fff,0 0 0 4px #ddd6fe}
/* —— 侧栏 —— */
aside.border-r{background:linear-gradient(180deg,#faf8ff,#fff 40%)}
aside h4{display:flex;align-items:center;gap:8px;letter-spacing:.08em;color:#3b3568 !important}
aside h4::before{content:"";width:18px;height:18px;border-radius:6px;flex:none;background:var(--v-pri) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 6h14M5 12h14M5 18h9'/%3E%3C/svg%3E") center/12px no-repeat}
aside .mb-6:nth-of-type(2) h4::before{background-color:var(--v-teal)}aside .mb-6:nth-of-type(3) h4::before{background-color:var(--v-amber)}aside .mb-6:nth-of-type(4) h4::before{background-color:var(--v-rose)}aside .mb-6:nth-of-type(5) h4::before{background-color:var(--v-sky)}aside .mb-6:nth-of-type(6) h4::before{background-color:#4338ca}
aside ul a{border-radius:0 8px 8px 0;font-size:13.5px}
aside ul a:hover{background:var(--v-soft)}
aside ul a.font-bold{background:linear-gradient(90deg,#ede9fe,#faf8ff) !important;color:var(--v-pri2) !important}
/* —— 正文排版层次 —— */
main h1{letter-spacing:-.01em;color:var(--v-ink);line-height:1.28}
main .prose{font-size:17px;line-height:1.9;color:#1e293b;counter-reset:h2}
main .prose>p:first-of-type,main .prose>p:first-child{font-size:18px;line-height:1.85;color:#312e81;background:linear-gradient(90deg,#f5f3ff,transparent);border-left:4px solid var(--v-pri);padding:12px 16px;border-radius:0 12px 12px 0}
main .prose h2{counter-increment:h2;position:relative;margin:2.2em 0 .7em;padding:.1em 0 .45em 0;font-size:1.45rem;font-weight:800;color:var(--v-ink);border-bottom:2px solid var(--v-line)}
main .prose h2::before{content:counter(h2,decimal-leading-zero);display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:26px;margin-right:10px;padding:0 8px;border-radius:8px;background:var(--v-pri);color:#fff;font-size:13px;font-weight:800;vertical-align:middle;letter-spacing:.04em}
main .prose h2:nth-of-type(4n+2)::before{background:var(--v-teal)}main .prose h2:nth-of-type(4n+3)::before{background:var(--v-amber)}main .prose h2:nth-of-type(4n+4)::before{background:var(--v-rose)}
main .prose h2#sources::before{content:"";min-width:26px;background:var(--v-sky) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5h10a3 3 0 013 3v11H7a3 3 0 01-3-3V5z'/%3E%3C/svg%3E") center/15px no-repeat}
main .prose h3{position:relative;margin:1.6em 0 .45em;padding-left:16px;font-size:1.12rem;font-weight:700;color:#2e1065}
main .prose h3::before{content:"";position:absolute;left:0;top:.42em;width:8px;height:8px;border-radius:2px;background:var(--v-pri);transform:rotate(45deg)}
main .prose p{margin:.85em 0}
main .prose h3+p{padding-left:16px;border-left:1px dashed #cdbff3;margin-left:3px}
main .prose ul{list-style:none;padding-left:0;margin:1em 0}
main .prose ul>li{position:relative;padding:.55em .9em .55em 2.1em;margin:.4em 0;background:#faf8ff;border:1px solid var(--v-line);border-radius:10px}
main .prose ul>li::before{content:"";position:absolute;left:.85em;top:1.05em;width:.6em;height:.6em;border-radius:50%;background:var(--v-pri);box-shadow:0 0 0 3px #ddd6fe}
main .prose ul>li:nth-child(3n+2)::before{background:var(--v-teal);box-shadow:0 0 0 3px #ccfbf1}main .prose ul>li:nth-child(3n+3)::before{background:var(--v-amber);box-shadow:0 0 0 3px #fef3c7}
main .prose a{color:var(--v-pri2);font-weight:600;text-decoration-color:#c4b5fd;text-underline-offset:3px}
main .prose a:hover{background:#ede9fe}
main .prose code{background:#f1edfd;color:#4c1d95;border-radius:6px;padding:.1em .4em}
main .prose pre{border-radius:14px;box-shadow:0 12px 28px -18px rgba(30,27,75,.6)}
main .prose table{display:block;overflow-x:auto;border-collapse:separate;border-spacing:0;border:1px solid var(--v-line);border-radius:14px;font-size:15px}
main .prose thead th{background:linear-gradient(180deg,#f3efff,#ece6ff);color:var(--v-ink);padding:.7em 1em;text-align:left;white-space:nowrap}
main .prose td{padding:.65em 1em;border-top:1px solid #efeafc}
main .prose tbody tr:nth-child(even) td{background:#fbfaff}
main .prose tbody tr:hover td{background:#f5f1ff}
/* —— 文章封面 / 面包屑 / 元信息 —— */
article div.w-full.rounded-2xl{background:linear-gradient(135deg,#4c1d95 0%,#6d28d9 48%,#0f766e 120%) !important;box-shadow:0 22px 40px -26px rgba(76,29,149,.8)}
article time{font-weight:600}
nav[aria-label="面包屑"] a{color:var(--v-pri2) !important;font-weight:600}
nav[aria-label="面包屑"]{background:#f7f4ff;border:1px solid var(--v-line);border-radius:999px;padding:6px 14px;display:inline-block}
/* —— 按钮 —— */
a.bg-blue-600,button.bg-blue-600{background:linear-gradient(135deg,#7c3aed,#5b21b6) !important;box-shadow:0 8px 18px -10px rgba(91,33,182,.9),inset 0 1px 0 rgba(255,255,255,.25);border:0 !important;transition:transform .15s,box-shadow .15s}
a.bg-blue-600:hover{transform:translateY(-1px);box-shadow:0 12px 22px -10px rgba(91,33,182,.95),inset 0 1px 0 rgba(255,255,255,.3)}
a.bg-slate-900{background:linear-gradient(135deg,#1e1b4b,#312e81) !important}
a.border-slate-300{border-color:#c4b5fd !important}
/* —— 品牌卡：App 图标式单字徽标 + 五色轮换顶条 —— */
.v2w-card{--c:#6d28d9;--c2:#ede9fe;border:1px solid var(--v-line) !important;border-top:5px solid var(--c) !important;box-shadow:0 14px 30px -22px rgba(76,29,149,.65) !important;transition:transform .18s,box-shadow .18s}
.v2w-card:hover{transform:translateY(-3px);box-shadow:0 20px 34px -20px rgba(76,29,149,.75) !important}
.v2w-card:has(h3[data-c="1"]){--c:#0f766e;--c2:#ccfbf1}.v2w-card:has(h3[data-c="2"]){--c:#b45309;--c2:#fef3c7}.v2w-card:has(h3[data-c="3"]){--c:#be123c;--c2:#ffe4e6}.v2w-card:has(h3[data-c="4"]){--c:#0369a1;--c2:#e0f2fe}
h3[data-m],h1[data-m]{display:flex;align-items:center;gap:12px}
h3[data-m]::before,h1[data-m]::before{content:attr(data-m);flex:none;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:13px;background:linear-gradient(145deg,var(--c,#6d28d9),color-mix(in srgb,var(--c,#6d28d9) 70%,#000));color:#fff;font-size:20px;font-weight:900;box-shadow:inset 0 2px 0 rgba(255,255,255,.35),0 8px 14px -8px var(--c,#6d28d9)}
h1[data-c="1"]{--c:#0f766e}h1[data-c="2"]{--c:#b45309}h1[data-c="3"]{--c:#be123c}h1[data-c="4"]{--c:#0369a1}
.v2w-card h3{font-size:1.2rem;color:var(--v-ink)}
.v2w-card div.rounded-lg.border{background:linear-gradient(135deg,var(--c2),#fff) !important;border-color:var(--c2) !important}
.v2w-card .text-blue-600,.v2w-card span.text-lg{color:var(--c) !important}
.v2w-card span.rounded-full{background:var(--c2) !important;color:var(--c) !important;border-color:transparent !important;font-weight:700}
.v2w-card a.bg-blue-600{background:linear-gradient(135deg,var(--c),color-mix(in srgb,var(--c) 70%,#000)) !important}
/* —— 首页 hero / 专题卡 —— */
.v2w-hero{background:radial-gradient(900px 260px at 100% 0,#e9e0ff,transparent 60%),linear-gradient(135deg,#f5f3ff 0%,#fff 70%) !important;border-color:#d8ccfb !important;box-shadow:0 22px 40px -30px rgba(76,29,149,.6);padding:34px 34px 30px !important}
.v2w-hero::after{content:"";position:absolute;right:-30px;bottom:-34px;width:230px;height:230px;opacity:.9;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Ccircle cx='100' cy='100' r='88' fill='none' stroke='%236d28d9' stroke-opacity='.16' stroke-width='2'/%3E%3Ccircle cx='100' cy='100' r='58' fill='none' stroke='%230f766e' stroke-opacity='.22' stroke-width='2'/%3E%3Ccircle cx='100' cy='100' r='28' fill='%236d28d9' fill-opacity='.14'/%3E%3Ccircle cx='100' cy='12' r='6' fill='%236d28d9'/%3E%3Ccircle cx='158' cy='100' r='6' fill='%23d97706'/%3E%3Ccircle cx='60' cy='142' r='6' fill='%23be123c'/%3E%3Cpath d='M100 12L158 100L60 142Z' fill='none' stroke='%236d28d9' stroke-opacity='.35'/%3E%3C/svg%3E") center/contain no-repeat}
.v2w-hero h1{font-size:2.4rem;font-weight:900;background:linear-gradient(90deg,#2e1065,#6d28d9);-webkit-background-clip:text;background-clip:text;color:transparent}
.v2w-topics>a:nth-child(4n+2)::before{background:#ccfbf1;color:#0f766e}.v2w-topics>a:nth-child(4n+3)::before{background:#fef3c7;color:#b45309}.v2w-topics>a:nth-child(4n+4)::before{background:#ffe4e6;color:#be123c}
.v2w-topics>a{box-shadow:0 8px 18px -16px rgba(76,29,149,.6)}.v2w-topics>a:hover{transform:translateY(-2px)}
main section.rounded-xl.border{border-radius:18px !important;box-shadow:0 12px 26px -22px rgba(76,29,149,.55);background:linear-gradient(180deg,#fff,#fcfbff)}
main h2.text-2xl,main h2.text-xl{color:var(--v-ink)}
/* —— 固定区块 / 披露 / 表格卡 —— */
.v2w-fixed{border-radius:16px;border:1px solid #fcd34d;background:linear-gradient(135deg,#fffbeb,#fff7e0);box-shadow:0 12px 24px -20px rgba(180,83,9,.6)}
.v2w-fixed h2{color:#7c2d12}
section .rounded-xl.border.overflow-hidden{border-radius:16px !important;border-color:var(--v-line) !important;box-shadow:0 12px 26px -22px rgba(76,29,149,.5)}
section table thead{background:linear-gradient(180deg,#f3efff,#ece6ff) !important}
section table tbody tr:nth-child(even){background:#fbfaff}
details.group,details.rounded-lg{border-radius:14px !important;border-color:var(--v-line) !important;background:#faf8ff !important}
details summary{font-weight:700;color:var(--v-ink) !important}
nav[aria-label="文档翻页"] a{border-radius:14px !important;border-color:var(--v-line) !important;box-shadow:0 10px 22px -20px rgba(76,29,149,.6);background:#fff}
nav[aria-label="文档翻页"] a:hover{background:var(--v-soft) !important;border-color:#a78bfa !important}
/* 右侧目录 */
nav[aria-label="本页目录"] ul{border-left:2px solid var(--v-line) !important}
nav[aria-label="本页目录"] a{font-size:13px}
nav[aria-label="本页目录"] a:hover{color:var(--v-pri2) !important;border-color:var(--v-pri) !important}
/* 页脚 */
footer{background:linear-gradient(180deg,#faf8ff,#f3efff) !important;border-top:3px solid #ddd6fe !important}
footer h3{color:var(--v-ink) !important;display:flex;align-items:center;gap:8px}
footer h3::before{content:"";width:8px;height:8px;border-radius:2px;background:var(--v-pri);transform:rotate(45deg)}
footer a:hover{color:var(--v-pri2) !important}
/* —— 移动端 —— */
@media (max-width:640px){
 main .prose{font-size:16.5px;line-height:1.85}
 main .prose h2{font-size:1.28rem}
 main .prose>p:first-of-type{font-size:17px;padding:10px 12px}
 .v2w-hero{padding:22px 18px 22px !important}.v2w-hero h1{font-size:1.85rem}.v2w-hero::after{width:150px;height:150px;opacity:.55}
 h3[data-m]::before,h1[data-m]::before{width:38px;height:38px;font-size:17px;border-radius:11px}
 main .prose ul>li{padding-left:1.9em}
 nav[aria-label="面包屑"]{display:block;border-radius:14px}
 header.sticky::after{height:2px}
}
@media (prefers-reduced-motion:reduce){*{transition:none !important;scroll-behavior:auto !important}}
.v2w-hero>*{position:relative;z-index:1}.v2w-hero::after{opacity:.6}
