/* ---- 系统字体栈（替代外链 Google Fonts，国内访问不再阻塞） ---- */
html, body, h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4 {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
        "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC",
        "Helvetica Neue", Arial, sans-serif !important;
}

/* ============================================================
   上元数智 · 全站科技感增强层（配合现有 custom.css 使用）
   说明：所有动画尊重 prefers-reduced-motion；不影响 Isotope 管理的
   .project 元素（其透明度由 Isotope 控制）。
   ============================================================ */

/* ---- 滚动条 ---- */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: #0b1220; }
::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #2a4a8f, #1a2f5c);
    border-radius: 6px; border: 2px solid #0b1220;
}
::-webkit-scrollbar-thumb:hover { background: #3a7dff; }
::selection { background: rgba(58, 125, 255, .35); color: #fff; }

/* ---- 导航栏：滚动后玻璃拟态 ---- */
#main_nav {
    transition: background .35s ease, box-shadow .35s ease, backdrop-filter .35s ease;
}
#main_nav.nav-scrolled {
    background: rgba(10, 22, 40, .82) !important;
    backdrop-filter: blur(14px) saturate(140%);
    -webkit-backdrop-filter: blur(14px) saturate(140%);
    box-shadow: 0 8px 30px rgba(0, 0, 0, .45);
}
#main_nav.nav-scrolled .nav-link { color: #dbe6ff !important; }
#main_nav.nav-scrolled .navbar-toggler-icon {
    filter: invert(1) brightness(1.6);
}

/* ---- 区块标题：科技感渐变装饰线 ---- */
h2.semi-bold-600 {
    position: relative;
    background: linear-gradient(120deg, #ffffff 30%, #9fc3ff 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
h2.semi-bold-600::after {
    content: '';
    display: block;
    width: 64px; height: 3px; margin: 14px auto 0;
    border-radius: 3px;
    background: linear-gradient(90deg, transparent, #3a7dff 30%, #00d4ff 70%, transparent);
}

/* ---- 滚动显现动画（由 tech-polish.js 添加 .reveal/.in） ---- */
.reveal {
    opacity: 0;
    transform: translateY(26px);
    transition: opacity .7s cubic-bezier(.22,.61,.36,1),
                transform .7s cubic-bezier(.22,.61,.36,1);
    will-change: opacity, transform;
}
.reveal.in { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
    .reveal { opacity: 1; transform: none; transition: none; }
    html { scroll-behavior: auto; }
}

/* ---- 按钮辉光 ---- */
.btn-primary, .dynamic-button {
    box-shadow: 0 0 0 rgba(58, 125, 255, 0);
    transition: box-shadow .3s ease, transform .3s ease, filter .3s ease;
}
.btn-primary:hover, .dynamic-button:hover {
    box-shadow: 0 8px 28px rgba(58, 125, 255, .55), 0 0 12px rgba(0, 212, 255, .35);
    transform: translateY(-2px);
    filter: saturate(1.2);
}

/* ---- 页脚后台入口：低调不抢眼 ---- */
.footer-sep { margin: 0 8px; opacity: .5; }
.admin-entry { opacity: .45; font-size: .92em; transition: opacity .25s; }
.admin-entry:hover { opacity: 1; }

/* ---- 联系表单状态提示 ---- */
.form-status { font-size: .92rem; }
.text-success { color: #2fd08c !important; }
.text-warning { color: #ffc65c !important; }

/* ---- 视频容器微调：黑位更纯粹，科技氛围 ---- */
.hero-video video { filter: saturate(1.05) contrast(1.03); }
