/* ============ 深色主题：基础底色与渐变氛围 ============ */
:root {
    --bg: #070b14;
    --card: #0f172a;
    --line: #1e293b;
    --text: #e2e8f0;
    --muted: #94a3b8;
    --brand-a: #14b8a6;
    --brand-b: #2563eb;
}

::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #070b14; }
::-webkit-scrollbar-thumb { background: #233247; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #334155; }

/* 页面底色：深色 + 三层柔和光晕渐变 */
body.bg-dark-bg {
    background-color: #070b14;
    background-image:
        radial-gradient(1100px 620px at 12% -8%, rgba(20, 184, 166, .18), transparent 62%),
        radial-gradient(900px 520px at 88% 4%, rgba(37, 99, 235, .18), transparent 60%),
        radial-gradient(1000px 700px at 50% 112%, rgba(139, 92, 246, .12), transparent 66%);
    background-attachment: fixed;
}

::selection { background: rgba(20, 184, 166, .35); color: #fff; }

/* ============ 玻璃拟态导航 / 卡片 ============ */
.glass {
    background: linear-gradient(180deg, rgba(15, 23, 42, .86) 0%, rgba(7, 11, 20, .72) 100%);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border: 1px solid rgba(148, 163, 184, .16);
    box-shadow: 0 10px 34px rgba(2, 6, 23, .55);
}

/* ============ 渐变文字 / 光晕 ============ */
.gradient-text {
    background: linear-gradient(135deg, #5eead4 0%, #60a5fa 52%, #a78bfa 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.bg-glow {
    position: absolute;
    width: 600px;
    height: 600px;
    background:
        radial-gradient(circle, rgba(20, 184, 166, .20) 0%, rgba(20, 184, 166, .08) 38%, transparent 70%),
        radial-gradient(circle, rgba(37, 99, 235, .14) 0%, transparent 65%);
    top: -100px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 0;
    pointer-events: none;
}

/* ============ 主按钮：青蓝渐变 ============ */
a.bg-brand-600,
button.bg-brand-600 {
    background-image: linear-gradient(135deg, #0d9488 0%, #14b8a6 45%, #2563eb 100%);
    border: 1px solid rgba(94, 234, 212, .28);
}
a.bg-brand-600:hover,
button.bg-brand-600:hover {
    background-image: linear-gradient(135deg, #14b8a6 0%, #2dd4bf 45%, #3b82f6 100%);
}
a.bg-brand-500,
button.bg-brand-500 {
    background-image: linear-gradient(135deg, #14b8a6 0%, #2dd4bf 50%, #3b82f6 100%);
}

/* 卡片悬停时的一层渐变描边光 */
.group:hover .group-hover\:border-brand-400 { border-color: #2dd4bf; }

/* ============ 长文档排版（GEO 内容页通用 · 深色） ============ */
.doc { max-width: 56rem; }
.doc h1 { font-size: 2rem; font-weight: 700; color: #f1f5f9; line-height: 1.3; margin-bottom: 1rem; }
.doc h2 {
    font-size: 1.5rem;
    font-weight: 700;
    color: #f1f5f9;
    margin: 2.75rem 0 1rem;
    padding-left: 0.75rem;
    border-left: 4px solid #2dd4bf;
}
.doc h3 { font-size: 1.125rem; font-weight: 600; color: #e2e8f0; margin: 1.75rem 0 0.75rem; }
.doc p { color: #a8b3c4; line-height: 1.85; margin-bottom: 1rem; }
.doc strong { color: #f1f5f9; font-weight: 600; }
.doc a { color: #2dd4bf; text-decoration: underline; text-decoration-color: rgba(45, 212, 191, .45); text-underline-offset: 3px; }
.doc a:hover { color: #5eead4; text-decoration-color: #5eead4; }
.doc ul, .doc ol { color: #a8b3c4; line-height: 1.85; margin: 0 0 1.25rem 1.25rem; }
.doc ul { list-style: disc; }
.doc ol { list-style: decimal; }
.doc li { margin-bottom: 0.5rem; }
.doc li::marker { color: #2dd4bf; }
.doc code {
    background: rgba(45, 212, 191, .09);
    border: 1px solid rgba(45, 212, 191, .24);
    border-radius: 6px;
    padding: 2px 8px;
    font-size: 0.875em;
    color: #5eead4;
    font-family: ui-monospace, "Cascadia Code", Consolas, monospace;
}
.doc table { width: 100%; border-collapse: collapse; margin: 0 0 1.5rem; font-size: 0.925rem; }
.doc th, .doc td { border: 1px solid #1e293b; padding: 10px 14px; text-align: left; }
.doc th {
    background: linear-gradient(180deg, rgba(20, 184, 166, .16), rgba(20, 184, 166, .05));
    color: #f1f5f9;
    font-weight: 600;
    white-space: nowrap;
}
.doc td { color: #a8b3c4; }
.doc tbody tr:nth-child(even) { background: rgba(148, 163, 184, .04); }
.doc blockquote {
    border-left: 4px solid #2dd4bf;
    background: linear-gradient(90deg, rgba(45, 212, 191, .10), rgba(45, 212, 191, 0));
    border-radius: 0 12px 12px 0;
    padding: 14px 20px;
    margin: 0 0 1.5rem;
    color: #a8b3c4;
}
.doc figure figcaption { font-size: .85rem; color: #64748b; text-align: center; margin-top: .5rem; }
