/* ============================================================
   OAII Theme - 完整样式表
   基于《OAII社区网站优化方案v3.0》设计稿

   主色调：深蓝 #005fcd（沉稳专业）
   渐变深色：#0a2766
   亮蓝色：  #2a6fd6
   背景：   #f5f7fa
   ============================================================ */

/* ---------- CSS 变量 ---------- */
:root {
    --oaii-primary:     #005fcd;    /* 主蓝色（沉稳深蓝） */
    --oaii-primary-dark:#0a2766;    /* 深蓝（渐变色） */
    --oaii-primary-light:#2a6fd6;   /* 亮蓝（hover/渐变亮端） */
    --oaii-accent:      #005fcd;    /* 强调色（与主色一致） */
    --oaii-accent-hover:#0d2f7a;    /* 深蓝hover */
    --oaii-bg:          #ffffff;    /* 白底 */
    --oaii-bg-alt:      #f5f7fa;    /* 浅灰背景 */
    --oaii-text:        #1e293b;    /* 正文 */
    --oaii-text-light:  #64748b;    /* 次要文字 */
    --oaii-border:      #e2e8f0;    /* 边框 */
    --oaii-radius:      12px;       /* 圆角 */
    --oaii-shadow:      0 2px 12px rgba(0,0,0,.06);
    --oaii-header-h:    64px;        /* 导航高度 */

    --container-max:    1200px;      /* 内容最大宽度 */

    /* Hero 背景渐变（可替换为图片：在页面内联 style 中设置 --oaii-hero-bg 即可） */
    --oaii-hero-bg:     linear-gradient(120deg, #0a2766, #005fcd);
}

/* ---------- Reset & Base ---------- */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

body {
    font-family: "PingFang SC", "Microsoft YaHei", Helvetica, Arial, sans-serif;
    color: var(--oaii-text);
    background: var(--oaii-bg);
    line-height: 1.6;
    font-size: 15px;
    -webkit-font-smoothing: antialiased;
}

a { color: var(--oaii-primary); text-decoration: none; transition: color .2s; }
a:hover { color: var(--oaii-primary-light); }
img { max-width: 100%; height: auto; display: block; }
ul { list-style: none; }

/* ---------- 全局防水平溢出 ---------- */
/* 使用 clip 替代 hidden：hidden 会创建滚动容器，破坏 position: sticky */
/* scroll-padding-top 确保浏览器原生 hash 跳转不被 sticky header 遮挡 */
html, body { overflow-x: clip; max-width: 100vw; }
html { scroll-padding-top: 120px; }

/* ---------- 全局文字换行（防止长文本/URL撑破布局） ---------- */
body, .oaii-container, .oaii-section, .oaii-page-content,
h1, h2, h3, h4, h5, h6, p, li, td, th, blockquote, dd, dt, a, span, div {
    overflow-wrap: break-word;
    word-wrap: break-word;
}
pre, code { white-space: pre-wrap; word-break: break-all; }
/* 长URL强制断行 */
a[href^="http"], .oaii-doc-url, .oaii-break-all {
    word-break: break-all;
}

/* ---------- Container ---------- */
.oaii-container { max-width: var(--container-max); margin: 0 auto; padding: 0 24px; width: 100%; }
.oaii-section { padding: 22px 0; }
.oaii-text-center { text-align: center; }

/* ---------- 全局表格响应式（防止过宽表格撑破移动端布局） ---------- */
table { max-width: 100%; }
@media (max-width: 768px) {
    .oaii-container > table,
    .oaii-section-content > table,
    .oaii-page-content > table,
    .oaii-main > table,
    .oaii-article-content table,
    .oaii-faq-answer table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
    }
}

/* ---------- Header / 导航栏（固定顶部） ---------- */
.oaii-header {
    position: fixed;
    top: 0; left: 0; right: 0;
    z-index: 9999;
    height: var(--oaii-header-h);
    background: #fff;
    border-bottom: 1px solid var(--oaii-border);
    box-shadow: 0 1px 4px rgba(0,0,0,.04);
    overflow: visible;
}
.oaii-header-inner {
    max-width: var(--container-max);
    margin: 0 auto;
    padding: 0 24px;
    height: 100%;
    display: flex;
    align-items: center;
    gap: 24px;
}
.oaii-header-right {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-left: auto;
    flex-shrink: 0;
}

/* Logo */
.oaii-logo { display: flex; align-items: center; flex-shrink: 0; }
.oaii-logo a, .oaii-logo-text {
    font-size: 20px;
    font-weight: 800;
    color: var(--oaii-primary);
    white-space: nowrap;
    letter-spacing: -.5px;
}
.oaii-logo-img {
    height: 46px;
    width: auto;
    max-width: none;
    object-fit: contain;
    display: block;
}
.oaii-footer-logo-text {
    font-size: 18px; font-weight: 800;
    color: #fff; margin-bottom: 16px;
}
.custom-logo-link img { height: 36px; width: auto; object-fit: contain; }
.oaii-footer-logo img { filter: brightness(0) invert(1); opacity:.9; }

/* 导航菜单（桌面端） */
.oaii-nav { flex: 1; }
.oaii-nav-list {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2px;
}
.oaii-nav-item { position: relative; }
.oaii-nav-link {
    display: block;
    padding: 6px 12px;
    font-size: 15px;
    font-weight: 700;
    color: var(--oaii-text);
    border-radius: 8px;
    transition: all .2s;
    white-space: nowrap;
}
.oaii-nav-link:hover,
.oaii-nav-item.current-menu-item > .oaii-nav-link {
    color: var(--oaii-primary);
    background: rgba(16,58,151,.06);
}

/* 下拉箭头（桌面端 hover 时显示，移动端始终显示） */
.oaii-nav-arrow {
    display: none;
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px 8px;
    color: inherit;
    line-height: 1;
    margin-left: 2px;
    vertical-align: middle;
}
.oaii-has-submenu:hover > .oaii-nav-link > .oaii-nav-arrow,
.oaii-nav-item:focus-within > .oaii-nav-link > .oaii-nav-arrow {
    display: inline-flex;
}
.oaii-nav-arrow svg { vertical-align: middle; transition: transform .2s; }

/* ========== Mega Menu（全宽下拉面板） ========== */
.oaii-mega-menu {
    position: fixed;
    top: var(--oaii-header-h);
    left: 0;
    right: 0;
    width: auto;
    background: #fff;
    border-top: 1px solid var(--oaii-border);
    box-shadow: 0 8px 30px rgba(0,0,0,.08), 0 2px 8px rgba(0,0,0,.04);
    padding: 24px 0 32px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px);
    transition: opacity .25s ease, visibility .25s ease, transform .25s ease;
    z-index: 9997;
}
/* hover 桥接：填补触发项底部与面板顶部之间的间隙，避免鼠标划过时面板闪退 */
.oaii-mega-menu::before {
    content: '';
    position: absolute;
    top: -16px;
    left: 0;
    right: 0;
    height: 16px;
}
.oaii-nav-item:hover > .oaii-mega-menu,
.oaii-has-submenu.open > .oaii-mega-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.oaii-has-submenu:hover > .oaii-nav-arrow svg { transform: rotate(180deg); }

/* Mega Menu 内容器 */
.oaii-mega-menu-inner {
    max-width: var(--container-max);
    margin: 0 auto;
    padding: 0 24px;
    display: flex;
    align-items: flex-start;
}

/* Mega Menu 多列布局 */
.oaii-mega-columns {
    display: flex;
    gap: 32px;
    width: 100%;
    list-style: none;
    margin: 0;
    padding: 0;
}
.oaii-mega-columns > .oaii-nav-item {
    /* 每个直接子项作为一列 */
    flex: 0 0 auto;
    min-width: 140px;
    max-width: 260px;
    position: static;
}

/* 列标题 */
.oaii-mega-col-title {
    display: block;
    font-size: 15px;
    font-weight: 600;
    color: var(--oaii-primary);
    padding: 6px 16px 10px;
    white-space: nowrap;
    border-bottom: 2px solid var(--oaii-primary);
    margin-bottom: 4px;
}
.oaii-mega-col-title:hover {
    color: var(--oaii-primary-light);
}

/* 列内的链接列表 */
.oaii-mega-columns .oaii-nav-submenu-level-2 {
    position: static !important;
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    box-shadow: none !important;
    border: none !important;
    background: transparent !important;
    padding: 4px 0 0 !important;
    min-width: 0 !important;
    transition: none !important;
}

/* 链接项 */
.oaii-mega-link {
    display: block;
    font-size: 13px;
    color: var(--oaii-text);
    padding: 7px 16px;
    border-radius: 6px;
    transition: background .15s, color .15s;
    line-height: 1.5;
}
.oaii-mega-link:hover {
    background: rgba(16,58,151,.06);
    color: var(--oaii-primary);
}

/* 无子菜单的一级子项（直接链接，也作为一列） */
.oaii-mega-columns > .oaii-nav-item:not(.oaii-has-submenu) > .oaii-nav-link {
    font-size: 14px;
    font-weight: 500;
    color: var(--oaii-text);
    padding: 6px 16px 12px;
    border-bottom: 2px solid transparent;
    white-space: nowrap;
}
.oaii-mega-columns > .oaii-nav-item:not(.oaii-has-submenu) > .oaii-nav-link:hover {
    color: var(--oaii-primary);
    border-bottom-color: var(--oaii-primary);
}

/* 搜索框 */
.oaii-search-box { flex-shrink: 0; }
.oaii-search-input {
    width: 160px;
    padding: 7px 36px 7px 14px;
    border: 1px solid var(--oaii-border);
    border-radius: 20px;
    font-size: 13px;
    outline: none;
    transition: width .3s, border-color .2s;
    background: var(--oaii-bg-alt);
}
.oaii-search-input:focus { width: 200px; border-color: var(--oaii-primary); }
.oaii-search-btn {
    position: absolute;
    right: 10px; top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    cursor: pointer;
    color: var(--oaii-text-light);
    padding: 4px;
}
.oaii-search-box form { position: relative; }

/* ========== 搜索联想下拉面板 ========== */
.oaii-search-dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin-top: 6px;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 10px;
    box-shadow: 0 8px 28px rgba(0,0,0,.12);
    z-index: 1000;
    overflow: hidden;
    min-width: 260px;
}
.oaii-search-dropdown-header {
    padding: 10px 16px 6px;
    font-size: 12px;
    color: var(--oaii-text-light);
    letter-spacing: .5px;
    border-bottom: 1px solid var(--oaii-bg-alt);
}
.oaii-search-dropdown-list {
    list-style: none;
    margin: 0;
    padding: 4px 0;
}
.oaii-search-dropdown-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 9px 16px;
    cursor: pointer;
    transition: background .15s;
    gap: 10px;
}
.oaii-search-dropdown-item:hover,
.oaii-search-dropdown-item.active {
    background: var(--oaii-bg-alt);
}
.oaii-search-dropdown-link {
    flex: 1;
    font-size: 14px;
    color: var(--oaii-text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.oaii-search-dropdown-item:hover .oaii-search-dropdown-link,
.oaii-search-dropdown-item.active .oaii-search-dropdown-link {
    color: var(--oaii-primary);
}
.oaii-search-dropdown-tag {
    flex-shrink: 0;
    font-size: 11px;
    padding: 1px 6px;
    border-radius: 3px;
    color: #fff;
    background: var(--oaii-primary);
    opacity: .75;
    line-height: 1.6;
}
/* 热门搜索 tag 用主蓝色 */
.oaii-search-dropdown-item:first-child .oaii-search-dropdown-tag,
.oaii-search-dropdown-header ~ .oaii-search-dropdown-list .oaii-search-dropdown-tag {
    background: var(--oaii-accent);
    opacity: .9;
}

/* ========== 用户下拉菜单（高优先级，防止被插件样式覆盖） ========== */
header .oaii-user-menu {
    position: relative !important;
    display: inline-block !important;
    flex-shrink: 0 !important;
    vertical-align: middle !important;
    line-height: 1 !important;
    font-size: 0 !important; /* 消除inline-block空白 */
}

/* 切换按钮（头像 + 名字 + 箭头）— 桌面端 */
header .oaii-user-toggle {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: none !important;
    border: 1px solid transparent !important;
    border-radius: 24px !important;
    padding: 3px 10px 3px 3px !important;
    cursor: pointer !important;
    transition: background .2s, border-color .2s !important;
    color: var(--oaii-text) !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    height: auto !important;
    max-height: 40px !important;
    overflow: hidden !important;
    white-space: nowrap !important;
}

header .oaii-user-toggle:hover {
    background: rgba(16,58,151,.06) !important;
    border-color: var(--oaii-border) !important;
}

/* 头像 — 强制约束尺寸 */
header .oaii-user-toggle .oaii-user-avatar,
header .oaii-user-menu .oaii-user-avatar {
    width: 32px !important;
    height: 32px !important;
    max-width: 32px !important;
    max-height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    border: 2px solid rgba(16,58,151,.12) !important;
    display: inline-block !important;
    flex-shrink: 0 !important;
    vertical-align: middle !important;
}

/* 确保用户菜单内所有 img 都不会撑大 */
header .oaii-user-menu img {
    max-width: 44px !important;
    max-height: 44px !important;
}

header .oaii-user-name {
    font-size: 13px !important;
    font-weight: 500 !important;
    max-width: 90px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    display: inline-block !important;
    vertical-align: middle !important;
    line-height: 1.2 !important;
}

header .oaii-user-arrow {
    transition: transform .2s ease !important;
    color: var(--oaii-text-light) !important;
    flex-shrink: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
}

header .oaii-user-menu.open .oaii-user-arrow {
    transform: rotate(180deg) !important;
}

/* ====== 下拉面板（核心：默认隐藏，点击后弹出） ====== */
header .oaii-user-dropdown {
    position: absolute !important;
    top: calc(100% + 6px) !important;
    right: 0 !important;
    width: 260px !important;
    background: #fff !important;
    border-radius: 12px !important;
    box-shadow: 0 6px 28px rgba(0,0,0,.15), 0 2px 8px rgba(0,0,0,.08) !important;
    border: 1px solid #e2e8f0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(-10px) scale(.97) !important;
    transition: all .22s ease !important;
    z-index: 99999 !important;
    overflow: hidden !important;
    display: block !important;
    pointer-events: none !important;
    /* 默认隐藏：三重保障 */
    clip-path: inset(0 0 100% 0) !important;
    max-height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* 展开状态：显示下拉面板 */
header .oaii-user-menu.open .oaii-user-dropdown {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) scale(1) !important;
    pointer-events: auto !important;
    clip-path: inset(0 0 0 0) !important;
    max-height: 400px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* 下拉头部：头像+昵称+邮箱（暖色背景） */
header .oaii-dropdown-header {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 16px !important;
    background: linear-gradient(135deg, #ffecd2 0%, #fcb69f 100%) !important;
    border-bottom: 1px solid rgba(0,0,0,.06) !important;
}

/* 下拉面板内的头像 — 稍大一点但仍然受控 */
header .oaii-dropdown-header .oaii-dropdown-avatar,
header .oaii-dropdown-avatar {
    width: 44px !important;
    height: 44px !important;
    max-width: 44px !important;
    max-height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    border: 2px solid rgba(255,255,255,.7) !important;
    flex-shrink: 0 !important;
    display: block !important;
}

header .oaii-dropdown-user-info { flex: 1 !important; overflow: hidden !important; }

header .oaii-dropdown-name {
    display: block !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #333 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    line-height: 1.3 !important;
}

header .oaii-dropdown-email {
    display: block !important;
    font-size: 12px !important;
    color: #666 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    margin-top: 2px !important;
    line-height: 1.2 !important;
}

/* 下拉操作链接区域 */
header .oaii-dropdown-links { padding: 6px 0 !important; }

header .oaii-dropdown-link {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 10px 16px !important;
    font-size: 14px !important;
    color: var(--oaii-text) !important;
    text-decoration: none !important;
    transition: background .15s !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

header .oaii-dropdown-link:hover {
    background: rgba(16,58,151,.05) !important;
    color: var(--oaii-primary) !important;
}
header .oaii-dropdown-link svg { flex-shrink: 0 !important; }

header .oaii-dropdown-logout { color: #d32f2f !important; }
header .oaii-dropdown-logout:hover { background: #fde8e8 !important; color: #d32f2f !important; }

/* 未登录时的登录按钮 */
header .oaii-login-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 7px 18px !important;
    background: var(--oaii-primary) !important;
    color: #fff !important;
    border-radius: 20px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: background .2s !important;
    white-space: nowrap !important;
    border: none !important;
}
header .oaii-login-btn:hover { background: var(--oaii-primary-dark) !important; color: #fff !important; }
header .oaii-login-btn svg { flex-shrink: 0 !important; }

/* 汉堡按钮（移动端） */
.oaii-hamburger {
    display: none;
    flex-direction: column;
    gap: 5px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 8px;
    z-index: 10002;
    position: relative;
}
.oaii-hamburger-line {
    width: 22px; height: 2px;
    background: var(--oaii-text);
    border-radius: 2px;
    transition: transform .3s, opacity .3s;
}

/* ========== 登录弹窗 ========== */
.oaii-login-modal-mask {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,.5);
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(2px);
}
.oaii-login-modal {
    background: #fff;
    border-radius: 16px;
    width: 400px;
    max-width: 92vw;
    padding: 32px 32px 24px;
    position: relative;
    box-shadow: 0 20px 60px rgba(0,0,0,.2);
    animation: oaiiLoginModalIn .25s ease;
}
@keyframes oaiiLoginModalIn {
    from { opacity: 0; transform: translateY(-20px) scale(.96); }
    to   { opacity: 1; transform: translateY(0) scale(1); }
}
.oaii-login-modal-close {
    position: absolute;
    top: 12px; right: 16px;
    background: none;
    border: none;
    font-size: 28px;
    line-height: 1;
    color: #999;
    cursor: pointer;
    padding: 4px 8px;
    transition: color .2s;
}
.oaii-login-modal-close:hover { color: #333; }
.oaii-login-modal-header {
    text-align: center;
    margin-bottom: 24px;
}
.oaii-login-modal-header h2 {
    font-size: 22px;
    font-weight: 700;
    color: var(--oaii-text);
    margin-bottom: 6px;
}
.oaii-login-modal-header p {
    font-size: 13px;
    color: var(--oaii-text-light);
}
.oaii-login-field {
    margin-bottom: 16px;
}
.oaii-login-field label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: var(--oaii-text);
    margin-bottom: 6px;
}
.oaii-login-field input {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid var(--oaii-border);
    border-radius: 8px;
    font-size: 14px;
    outline: none;
    transition: border-color .2s, box-shadow .2s;
    box-sizing: border-box;
}
.oaii-login-field input:focus {
    border-color: var(--oaii-primary);
    box-shadow: 0 0 0 3px rgba(16,58,151,.1);
}
.oaii-login-error {
    background: #fef2f2;
    border: 1px solid #fecaca;
    color: #dc2626;
    padding: 10px 14px;
    border-radius: 8px;
    font-size: 13px;
    margin-bottom: 16px;
    text-align: center;
}
.oaii-login-submit {
    width: 100%;
    padding: 12px;
    background: #fff;
    color: var(--oaii-primary);
    border: 2px solid var(--oaii-primary);
    border-radius: 8px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: all .2s;
}
.oaii-login-submit:hover { background: var(--oaii-primary); color: #fff; }
.oaii-login-submit:disabled {
    opacity: .6;
    cursor: not-allowed;
}
.oaii-login-footer {
    display: flex;
    justify-content: space-between;
    margin-top: 16px;
    font-size: 13px;
}
.oaii-login-footer a {
    color: var(--oaii-primary);
    text-decoration: none;
}
.oaii-login-footer a:hover { text-decoration: underline; }

/* 移动端侧边菜单 */
.oaii-mobile-menu {
    position: fixed;
    top: 0; right: -320px;
    width: 300px;
    height: 100vh;
    background: #fff;
    z-index: 10001;
    overflow-y: auto;
    transition: right .3s ease;
    box-shadow: -4px 0 20px rgba(0,0,0,.15);
}
.oaii-mobile-menu.open { right: 0; }
.oaii-mobile-menu-inner { padding: 80px 16px 24px; }

/* 移动端导航列表 — 基础样式 */
.oaii-mobile-nav-list { list-style: none; padding: 0; margin: 0; }
.oaii-mobile-nav-list > .oaii-nav-item {
    border-bottom: 1px solid var(--oaii-border);
}
.oaii-mobile-nav-list > .oaii-nav-item > .oaii-nav-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 8px;
    font-weight: 600;
    font-size: 15px;
    color: var(--oaii-text);
    border-bottom: none;
}

/* 移动端：箭头始终可见 */
.oaii-mobile-nav-list .oaii-nav-arrow {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 6px;
    background: var(--oaii-bg-alt);
    flex-shrink: 0;
    transition: transform .25s ease, background .2s;
}
.oaii-mobile-nav-list .oaii-nav-arrow svg {
    transition: transform .25s ease;
}
.oaii-mobile-nav-list .oaii-has-submenu.open > .oaii-nav-link > .oaii-nav-arrow {
    background: var(--oaii-primary);
    color: #fff;
}
.oaii-mobile-nav-list .oaii-has-submenu.open > .oaii-nav-link > .oaii-nav-arrow svg {
    transform: rotate(180deg);
}

/* 移动端：Mega Menu 退化为可折叠嵌套列表 */
.oaii-mobile-nav-list .oaii-mega-menu {
    position: static !important;
    left: auto !important;
    right: auto !important;
    margin-left: 0 !important;
    width: 100% !important;
    padding: 4px 0 8px !important;
    box-shadow: none !important;
    border: none !important;
    border-top: 1px dashed var(--oaii-border) !important;
    background: var(--oaii-bg-alt) !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    display: none;
    margin-top: 4px;
    border-radius: 8px;
}
.oaii-mobile-nav-list .oaii-has-submenu.open > .oaii-mega-menu {
    display: block;
}
.oaii-mobile-nav-list .oaii-mega-menu-inner {
    max-width: none;
    padding: 0 8px;
}
.oaii-mobile-nav-list .oaii-mega-menu::before {
    display: none;
}
.oaii-mobile-nav-list .oaii-mega-columns {
    flex-direction: column;
    gap: 0;
    list-style: none;
    padding: 0;
    margin: 0;
}
.oaii-mobile-nav-list .oaii-mega-columns > .oaii-nav-item {
    max-width: none;
    min-width: 0;
    border-bottom: 1px solid rgba(0,0,0,.06);
}
.oaii-mobile-nav-list .oaii-mega-columns > .oaii-nav-item:last-child {
    border-bottom: none;
}
/* 列标题（有子项的一级子项）*/
.oaii-mobile-nav-list .oaii-mega-col-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 13px;
    font-weight: 600;
    color: var(--oaii-primary);
    padding: 10px 12px 10px 20px;
    white-space: nowrap;
    border-bottom: none;
}
/* 列标题箭头样式 */
.oaii-mobile-nav-list .oaii-mega-col-title .oaii-nav-arrow {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border: 1px solid var(--oaii-border);
    border-radius: 50%;
    background: #fff;
    color: var(--oaii-primary);
    cursor: pointer;
    flex-shrink: 0;
    transition: transform .25s ease, background .2s;
}
.oaii-mobile-nav-list .oaii-mega-col-title .oaii-nav-arrow svg {
    transition: transform .25s ease;
}
.oaii-mobile-nav-list .oaii-has-submenu.open > .oaii-mega-col-title .oaii-nav-arrow {
    background: var(--oaii-primary);
    color: #fff;
}
.oaii-mobile-nav-list .oaii-has-submenu.open > .oaii-mega-col-title .oaii-nav-arrow svg {
    transform: rotate(180deg);
}
/* 移动端列标题子菜单默认隐藏 */
.oaii-mobile-nav-list .oaii-mega-columns .oaii-has-submenu > .oaii-nav-submenu {
    display: none;
}
.oaii-mobile-nav-list .oaii-mega-columns .oaii-has-submenu.open > .oaii-nav-submenu {
    display: block;
}
/* 列内链接 */
.oaii-mobile-nav-list .oaii-mega-link {
    display: block;
    font-size: 13px;
    color: var(--oaii-text);
    padding: 9px 12px 9px 32px;
    line-height: 1.5;
    border-bottom: none;
}
.oaii-mobile-nav-list .oaii-mega-link:hover {
    background: rgba(16,58,151,.06);
    color: var(--oaii-primary);
}

.oaii-overlay {
    display: none;
    position: fixed; inset: 0; z-index: 10000;
    background: rgba(0,0,0,.35);
}
.oaii-overlay.show { display: block; }

.oaii-main { margin-top: var(--oaii-header-h); min-height: calc(100vh - var(--oaii-header-h)); }


/* ========== Page Header（蓝色页面头部） ========== */
.oaii-page-header {
    background: var(--oaii-hero-bg);
    color: #fff;
    min-height: 350px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 60px 0;
    text-align: left;
    margin-top: var(--oaii-header-h);
    position: relative;
    overflow: hidden;
}
.oaii-page-title {
    font-size: 38px; font-weight: 800; color: #fff; letter-spacing: -.5px;
}
.oaii-page-desc { opacity: .85; font-size: 15px; margin-top: 8px; letter-spacing: 2px; text-transform: uppercase; }


/* ========== Hero Banner 轮播（首页） ========== */
.oaii-hero { overflow: hidden; background: #ffffff; margin-top: var(--oaii-header-h); }

/* Banner Manager 插件接入时的全宽适配 */
.oaii-hero .bam-carousel {
    width: 100%;
    max-width: none;
}

.oaii-carousel {
    position: relative;
    max-width: var(--container-max);
    margin: 0 auto;
    aspect-ratio: 21/9;
}
.oaii-carousel-track {
    width: 100%;
    height: 100%;
    position: relative;
}
.oaii-carousel-slide {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity .6s ease;
    padding: 40px;
}
.oaii-carousel-slide.oaii-slide-active { opacity: 1; z-index: 1; }

.oaii-banner-card {
    background: linear-gradient(135deg, var(--oaii-primary) 0%, var(--oaii-primary-dark) 100%);
    border-radius: var(--oaii-radius);
    padding: 48px 60px;
    color: #fff;
    max-width: 700px;
    text-align: left;
}
.oaii-banner-title { font-size: 28px; font-weight: 800; margin-bottom: 16px; line-height: 1.25; }
.oaii-banner-desc { opacity: .88; font-size: 15px; line-height: 1.7; margin-bottom: 28px; }

/* 轮播控制按钮 */
.oaii-carousel-prev,
.oaii-carousel-next {
    position: absolute;
    top: 50%; transform: translateY(-50%);
    width: 44px; height: 44px;
    border-radius: 50%;
    background: rgba(255,255,255,.15);
    backdrop-filter: blur(4px);
    border: 1px solid rgba(255,255,255,.2);
    color: #fff;
    cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    transition: background .2s;
    z-index: 5;
}
.oaii-carousel-prev { left: 16px; }
.oaii-carousel-next { right: 16px; }
.oaii-carousel-prev:hover, .oaii-carousel-next:hover { background: rgba(255,255,255,.28); }

.oaii-carousel-dots {
    position: absolute;
    bottom: 20px;
    left: 50%; transform: translateX(-50%);
    display: flex; gap: 8px;
    z-index: 5;
}
.oaii-carousel-dots::before { content:''; display:inline-block;width:8px;height:8px;background:rgba(255,255,255,.4);border-radius:50%;cursor:pointer;transition:all .3s; }
.oaii-carousel-dots::after  { content:''; display:inline-block;width:8px;height:8px;background:rgba(255,255,255,.4);border-radius:50%;cursor:pointer;transition:all .3s; }


/* ========== 按钮 ========== */
.oaii-btn {
    display: inline-flex; align-items: center; justify-content: center;
    gap: 6px;
    padding: 11px 24px;
    border-radius: 8px;
    font-size: 14px; font-weight: 600;
    border: 2px solid transparent;
    cursor: pointer;
    transition: all .2s;
    text-align: center;
    line-height: 1;
    white-space: nowrap;
}
.oaii-btn-primary {
    background: #fff;
    color: var(--oaii-primary);
    border-color: var(--oaii-primary);
}
.oaii-btn-primary:hover { background: var(--oaii-primary); color: #fff; }
.oaii-btn-outline {
    background: #fff;
    color: var(--oaii-primary);
    border-color: var(--oaii-primary);
}
.oaii-btn-outline:hover { background: var(--oaii-primary); color: #fff; }
.oaii-btn-white { background: #fff; color: var(--oaii-primary); }
.oaii-btn-white:hover { background: #f1f5f9; }
.oaii-btn-sm { padding: 6px 16px; font-size: 13px; }
.oaii-btn-xs { padding: 4px 12px; font-size: 12px; border-width: 1px; }

/* 关于社区页面 — 蓝色边框白底按钮 */
.oaii-btn-about-link {
    background: #fff;
    color: #3c70dc;
    border-color: #3c70dc;
}
.oaii-btn-about-link:hover {
    background: #3c70dc;
    color: #fff;
}
.oaii-link { font-size: 14px; font-weight: 600; color: var(--oaii-primary); }
.oaii-link:hover { text-decoration: underline; color: var(--oaii-primary-light); }


/* ========== Section Header ========== */
.oaii-section-header { text-align: center; margin-bottom: 10px; }
.oaii-section-title { font-size: 32px; font-weight: 800; color: var(--oaii-text); margin-bottom: 8px; }
.oaii-section-title small { font-size: 14px; color: var(--oaii-text-light); font-weight: 400; letter-spacing: 2px; margin-left: 8px; text-transform: uppercase; }
.oaii-section-subtitle { color: var(--oaii-text-light); font-size: 15px; max-width: 600px; margin: 0 auto; }
.oaii-subtitle { font-size: 28px; font-weight: 800; margin-bottom: 24px; }
.oaii-sub-heading { font-size: 22px; font-weight: 700; margin-bottom: 24px; color: var(--oaii-text); }


/* ========== 筛选条 ========== */
.oaii-filter-bar { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-bottom: 36px; }
.oaii-filter-btn {
    padding: 7px 20px;
    border-radius: 20px;
    border: 1px solid var(--oaii-border);
    background: #fff;
    font-size: 13px;
    cursor: pointer;
    transition: all .2s;
    color: var(--oaii-text-light);
}
.oaii-filter-btn.active,
.oaii-filter-btn:hover {
    background: var(--oaii-primary);
    color: #fff;
    border-color: var(--oaii-primary);
}


/* ========== 文档卡片 ========== */
.oaii-docs-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 20px; }
.oaii-doc-card {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 28px;
    text-align: center;
    transition: box-shadow .2s, transform .2s;
}
.oaii-doc-card:hover { box-shadow: var(--oaii-shadow); transform: translateY(-2px); }
.oaii-doc-icon { font-size: 36px; margin-bottom: 16px; }
.oaii-doc-title { font-size: 15px; font-weight: 700; margin-bottom: 8px; color: var(--oaii-text); }
.oaii-doc-cat { font-size: 12px; color: var(--oaii-text-light); display: block; margin-bottom: 16px; }


/* ========== CTA 区域 ========== */
.oaii-cta-section { background: linear-gradient(135deg, var(--oaii-primary) 0%, #0a2766 100%); }
.oaii-cta-box {
    background: rgba(255,255,255,.08);
    backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,.15);
    border-radius: var(--oaii-radius);
    padding: 56px 40px;
    text-align: center;
    color: #fff;
}
.oaii-cta-title { font-size: 32px; font-weight: 800; margin-bottom: 12px; }
.oaii-cta-desc { opacity: .85; margin-bottom: 28px; font-size: 15px; }


/* ========== 活动日历 ========== */
.oaii-event-tabs { display: flex; justify-content: center; gap: 8px; margin-bottom: 32px; }
.oaii-tab-btn {
    padding: 8px 22px;
    border-radius: 8px;
    border: 1px solid var(--oaii-border);
    background: #fff;
    font-size: 14px; font-weight: 500;
    cursor: pointer;
    transition: all .2s;
}
.oaii-tab-btn.active, .oaii-tab-btn:hover { background: var(--oaii-primary); color: #fff; border-color: var(--oaii-primary); }

.oaii-calendar-wrapper {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 24px;
    max-width: 720px; margin: 0 auto;
}
.oaii-calendar-header { display:flex; align-items:center; justify-content:center; gap:24px; margin-bottom:20px; }
.oaii-cal-month { font-size:18px; font-weight:700; }
.oaii-cal-prev, .oaii-cal-next {
    width:32px; height:32px; border-radius:50%;
    border:1px solid var(--oaii-border); background:#fff;
    font-size:18px; cursor:pointer; display:flex;align-items:center;justify-content:center;
}
.oaii-cal-prev:hover, .oaii-cal-next:hover { background:var(--oaii-bg-alt); }

.oaii-calendar-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; }
.oaii-cal-weekday {
    font-size: 12px; font-weight: 600;
    color: var(--oaii-text-light); text-align: center; padding: 8px;
}
.oaii-calendar-grid::after { content:''; grid-column:1/-1; height:1px; background:var(--oaii-border); margin-top:8px; }
.oaii-calendar-footer { text-align: center; margin-top: 16px; }


/* ========== 成员 Logo 墙 ========== */
.oaii-member-categories { display: flex; flex-direction: column; gap: 40px; }
.oaii-member-group {}
.oaii-member-cat-label { font-size: 18px; font-weight: 700; margin-bottom: 20px; color: var(--oaii-text); }

.oaii-logo-grid {
    display: flex; flex-wrap: wrap; gap: 16px;
}
.oaii-logo-item {
    width: 120px; height: 70px;
    border: 1px solid var(--oaii-border);
    border-radius: 8px;
    display: flex; align-items: center; justify-content: center;
    background: #fff;
    transition: border-color .2s, box-shadow .2s;
}
.oaii-logo-item:hover { border-color: var(--oaii-primary); box-shadow: var(--oaii-shadow); }
.oaii-logo-item img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    width: auto;
    height: auto;
    padding: 8px;
}
.oaii-logo-placeholder { font-size: 11px; color: var(--oaii-text-light); font-weight: 600; letter-spacing: .5px; }


/* ========== 首页社区动态新闻列表 ========== */
.oaii-home-news-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.oaii-home-news-card {
    background: #fff;
    border-radius: var(--oaii-radius);
    box-shadow: 0 2px 8px rgba(0,0,0,.06);
    transition: all .3s ease;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}
.oaii-home-news-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 30px rgba(16,58,151,.15);
}
.oaii-home-news-img {
    height: 180px;
    background: linear-gradient(135deg, #f5f8fc, #eef2fb);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex-shrink: 0;
}
.oaii-home-news-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s;
}
.oaii-home-news-card:hover .oaii-home-news-img img {
    transform: scale(1.06);
}
.oaii-home-news-img-emoji {
    font-size: 40px;
}
.oaii-home-news-body {
    padding: 20px;
    flex: 1;
    display: flex;
    flex-direction: column;
}
.oaii-home-news-body .oaii-tag {
    align-self: flex-start;
    width: auto;
    margin-bottom: 10px;
}
.oaii-home-news-title {
    font-size: 20px;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 8px;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.oaii-home-news-title a {
    color: #1e293b;
    text-decoration: none;
    transition: color .15s;
}
.oaii-home-news-title a:hover {
    color: var(--oaii-primary);
}
.oaii-home-news-excerpt {
    font-size: 14px;
    color: #64748b;
    line-height: 1.7;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 12px;
}
.oaii-home-news-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 20px;
    border-top: 1px solid #EDF2F7;
    font-size: 12px;
    color: #94a3b8;
}
.oaii-home-news-read {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--oaii-primary);
    font-weight: 500;
    font-size: 14px;
    text-decoration: none;
    transition: gap .2s;
}
.oaii-home-news-read::after {
    content: '\2192';
    transition: transform .2s;
}
.oaii-home-news-read:hover {
    gap: 10px;
    color: #1e3a8a;
}
.oaii-home-news-read:hover::after {
    transform: translateX(3px);
}

/* 查看全部动态按钮 - 与原型 btn-outline 保持一致，缩小20% */
.oaii-home-news-btn.oaii-btn-outline {
    background: transparent;
    color: var(--oaii-primary);
    border: 2px solid var(--oaii-primary);
    padding: 10px 22px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
}
.oaii-home-news-btn.oaii-btn-outline::after {
    content: '\2192';
    margin-left: 5px;
    transition: transform .2s;
}
.oaii-home-news-btn.oaii-btn-outline:hover {
    background: var(--oaii-primary);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 4px 15px rgba(16,58,151,.3);
}
.oaii-home-news-btn.oaii-btn-outline:hover::after {
    transform: translateX(3px);
}

/* 移动端：单列 */
@media (max-width: 860px) {
    .oaii-home-news-grid {
        grid-template-columns: 1fr;
    }
    .oaii-home-news-title { font-size: 16px; }
    .oaii-home-news-img { height: 140px; }
}


/* ========== Footer（4列） ========== */
.oaii-footer { background: #0f172a; color: rgba(255,255,255,.75); padding: 56px 0 0; }
.oaii-footer-inner {
    max-width: var(--container-max);
    margin: 0 auto;
    padding: 0 24px;
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr 1fr 1.6fr;
    gap: 32px;
}
.oaii-footer-heading { color: #fff; font-size: 15px; font-weight: 700; margin-bottom: 20px; }
.oaii-footer-desc { font-size: 13px; line-height: 1.7; margin-top: 12px; opacity: .7; }

.oaii-footer-links { list-style: none; margin: 0; padding: 0; }
.oaii-footer-links li { margin-bottom: 10px; }
.oaii-footer-links a { color: rgba(255,255,255,.65); font-size: 13px; transition: color .2s; }
.oaii-footer-links a:hover { color: #fff; }

/* 联系信息列 */
.oaii-footer-contact-list { list-style: none; margin: 0; padding: 0; }
.oaii-footer-contact-list .oaii-contact-item {
    margin-bottom: 14px;
    font-size: 13px;
    line-height: 1.6;
}
.oaii-footer-contact-list .oaii-contact-label {
    display: block;
    color: rgba(255,255,255,.9);
    font-weight: 600;
    margin-bottom: 2px;
}
.oaii-footer-contact-list .oaii-contact-value {
    display: block;
    color: rgba(255,255,255,.6);
}
.oaii-footer-contact-list .oaii-contact-value a {
    color: rgba(255,255,255,.6);
    transition: color .2s;
}
.oaii-footer-contact-list .oaii-contact-value a:hover { color: #fff; }

.oaii-footer-bottom {
    border-top: 1px solid rgba(255,255,255,.08);
    margin-top: 40px; padding: 20px 0;
    text-align: center; font-size: 13px; opacity: .5;
}


/* ========== About 页面 ========== */

/* 介绍 + 统计数字 */
.oaii-about-intro { background: var(--oaii-bg-alt); }
.oaii-intro-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 48px; align-items: start; }
.oaii-intro-text p { margin-bottom: 16px; color: var(--oaii-text); font-size: 15px; line-height: 1.8; }

.oaii-stats-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.oaii-stat-card {
    background: #fff;
    border-radius: var(--oaii-radius);
    padding: 28px 20px;
    text-align: center;
    border: 1px solid var(--oaii-border);
    transition: box-shadow .2s;
}
.oaii-stat-card:hover { box-shadow: var(--oaii-shadow); }
.oaii-stat-number { display: block; font-size: 36px; font-weight: 900; color: var(--oaii-primary); line-height: 1.1; }
.oaii-stat-label { font-size: 13px; color: var(--oaii-text-light); margin-top: 6px; }

/* 组织架构图 */
.oaii-org-chart { max-width: 700px; margin: 0 auto; }
.oaii-org-top { text-align: center; margin-bottom: 24px; }
.oaii-org-row { display: flex; justify-content: center; gap: 16px; margin-bottom: 16px; }
.oaii-org-node {
    background: #fff; border: 2px solid var(--oaii-primary);
    border-radius: var(--oaii-radius); padding: 20px 24px; text-align: center;
    font-size: 13px; min-width: 160px;
}
.oaii-org-node.oaii-org-main { background: var(--oaii-primary); color: #fff; border-color: var(--oaii-primary); font-size: 14px; }
.oaii-org-sm { min-width: 130px; font-size: 12px; }
.oaii-node-icon { font-size: 24px; margin-bottom: 8px; }
.oaii-org-bottom { margin-top: 24px; }

/* 六大核心价值 */
.oaii-values-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.oaii-value-card {
    background: #fff; border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius); padding: 32px 24px; text-align: center;
    transition: box-shadow .2s, transform .2s;
}
.oaii-value-card:hover { box-shadow: var(--oaii-shadow); transform: translateY(-3px); }
.oaii-value-icon { font-size: 36px; margin-bottom: 16px; }
.oaii-value-title { font-size: 17px; font-weight: 700; margin-bottom: 8px; }
.oaii-value-desc { font-size: 13px; color: var(--oaii-text-light); line-height: 1.7; }

/* 时间线 */
.oaii-timeline-list { max-width: 700px; margin: 0 auto; position: relative; padding-left: 32px; }
.oaii-timeline-list::before { content:''; position:absolute; left:8px; top:0; bottom:0; width:2px; background:var(--oaii-border); }
.oaii-timeline-list .oaii-timeline-item { position: relative; margin-bottom: 32px; }
.oaii-timeline-list .oaii-timeline-date {
    position: absolute; left:-52px; top:4px;
    font-size: 13px; font-weight: 700; color: var(--oaii-primary); white-space:nowrap;
}
.oaii-timeline-list .oaii-timeline-dot {
    position: absolute; left:-34px; top:8px;
    width: 12px; height: 12px; border-radius: 50%;
    background: var(--oaii-primary); border: 2px solid #fff;
    box-shadow: 0 0 0 2px var(--oaii-primary);
}
.oaii-timeline-list .oaii-timeline-content h4 { font-size: 16px; font-weight: 700; margin-bottom: 4px; }
.oaii-timeline-list .oaii-timeline-content p { font-size: 13px; color: var(--oaii-text-light); }

.oaii-milestones-summary {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px;
    margin-top: 40px; padding-top: 32px; border-top: 1px solid var(--oaii-border);
}
.oaii-ms-item {
    background: var(--oaii-bg-alt); border-radius: 8px; padding: 16px; text-align: center;
    font-size: 12px;
}
.oaii-ms-item strong { display:block; font-size:14px; margin-bottom:4px; color:var(--oaii-text); }

/* 社区机制 */
.oaii-mechanism-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.oaii-mechanism-grid--2cols {
    grid-template-columns: repeat(2, 1fr);
    max-width: 640px;
    margin-left: auto;
    margin-right: auto;
}
.oaii-mech-card {
    background: #fff; border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius); padding: 32px; text-align: center;
    display: block; text-decoration: none; color: inherit;
}
.oaii-mech-linked {
    cursor: pointer;
    transition: box-shadow .2s, transform .2s, border-color .2s;
}
.oaii-mech-linked:hover {
    box-shadow: 0 4px 16px rgba(0,95,205,.12);
    transform: translateY(-2px);
    border-color: var(--oaii-primary);
}
.oaii-mech-icon { font-size: 36px; margin-bottom: 16px; }
.oaii-mech-card h3 { font-size: 17px; font-weight: 700; margin-bottom: 10px; }
.oaii-mech-card p { font-size: 13px; color: var(--oaii-text-light); line-height: 1.7; }

/* 社区机制 - 下载模块 */
.oaii-mech-downloads {
    margin-top: 48px;
}
.oaii-mech-downloads-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--oaii-text);
    margin-bottom: 20px;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--oaii-primary);
}
.oaii-mech-downloads-list {
    display: flex;
    flex-direction: column;
    gap: 0;
}
.oaii-mech-download-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    background: #fff;
    margin-bottom: 10px;
    transition: box-shadow .2s, background .2s;
}
.oaii-mech-download-row:hover {
    background: #f8fafc;
    box-shadow: 0 2px 8px rgba(0,0,0,.05);
}
.oaii-mech-download-main {
    flex: 1;
    min-width: 0;
    padding-right: 16px;
}
.oaii-mech-download-name {
    font-size: 15px;
    font-weight: 600;
    color: var(--oaii-text);
    margin: 0 0 4px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.oaii-mech-download-meta {
    font-size: 13px;
    color: var(--oaii-text-light);
    margin: 0;
}
.oaii-mech-downloads-empty {
    font-size: 14px;
    color: var(--oaii-text-light);
    text-align: center;
    padding: 32px 20px;
    background: #f8fafc;
    border: 1px dashed var(--oaii-border);
    border-radius: var(--oaii-radius);
    margin: 0;
}

/* ========== 知识产权模态框 ========== */
.oaii-modal-overlay {
    display: none; position: fixed; inset: 0; z-index: 9999;
    background: rgba(0,0,0,.55); align-items: center; justify-content: center;
}
.oaii-modal-overlay.active { display: flex; }
.oaii-modal-container {
    background: #fff; border-radius: 12px; width: 100%;
    max-width: 640px; max-height: 85vh; overflow-y: auto;
    box-shadow: 0 20px 60px rgba(0,0,0,.2);
}
.oaii-modal-header {
    display: flex; align-items: center; justify-content: space-between;
    padding: 24px 28px; border-bottom: 1px solid var(--oaii-border);
    position: sticky; top: 0; background: #fff; z-index: 2;
    border-radius: 12px 12px 0 0;
}
.oaii-modal-title { font-size: 18px; font-weight: 700; color: var(--oaii-text); }
.oaii-modal-close {
    width: 32px; height: 32px; border: none; background: #f1f3f5;
    border-radius: 50%; cursor: pointer; font-size: 18px; line-height: 32px;
    color: #666; transition: background .2s;
}
.oaii-modal-close:hover { background: #e0e0e0; }
.oaii-modal-body { padding: 24px 28px 32px; }
.oaii-modal-dl-item {
    display: flex; align-items: center; justify-content: space-between;
    padding: 14px 18px; border: 1px solid var(--oaii-border);
    border-radius: 8px; margin-bottom: 10px; transition: box-shadow .2s;
}
.oaii-modal-dl-item:hover { box-shadow: 0 2px 8px rgba(0,0,0,.06); }
.oaii-modal-dl-name {
    font-size: 14px; font-weight: 600; color: var(--oaii-text);
    margin-bottom: 3px;
}
.oaii-modal-dl-meta { font-size: 12px; color: var(--oaii-text-light); }
.oaii-modal-dl-btn {
    flex-shrink: 0; margin-left: 16px;
    padding: 8px 20px; font-size: 13px; font-weight: 600;
    color: #fff; background: var(--oaii-primary); border: none;
    border-radius: 6px; cursor: pointer; white-space: nowrap;
    transition: background .2s; text-decoration: none;
}
.oaii-modal-dl-btn:hover { background: #004bb5; }
.oaii-modal-empty {
    text-align: center; padding: 40px 20px; color: var(--oaii-text-light);
    font-size: 14px;
}

/* ========== 工作条例页面 ========== */
.oaii-rule-tabs {
    background: #fff; position: sticky; top: 0; z-index: 100;
    border-bottom: 2px solid var(--oaii-border);
}
.oaii-rule-tabs .oaii-container {
    display: flex; gap: 0; padding-top: 0; padding-bottom: 0;
}
.oaii-rule-tab {
    padding: 14px 32px; font-size: 15px; font-weight: 600;
    color: var(--oaii-text-light); cursor: pointer; border: none;
    background: none; transition: color .2s;
    position: relative; margin-bottom: -2px;
}
.oaii-rule-tab:hover { color: var(--oaii-primary); }
.oaii-rule-tab.active {
    color: var(--oaii-primary);
    border-bottom: 2px solid var(--oaii-primary);
}
.oaii-rule-panel { display: none; }
.oaii-rule-panel.active { display: block; }

/* ===== 工作条例正文排版 ===== */
.oaii-regulation {
    max-width: 100%;
}
.oaii-reg-chapter {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 10px;
    padding: 36px 40px;
    margin-bottom: 28px;
}
.oaii-reg-chapter-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--oaii-primary);
    margin: 0 0 22px;
    padding-bottom: 16px;
    border-bottom: 2px solid var(--oaii-border);
}
.oaii-reg-article {
    margin-bottom: 20px;
}
.oaii-reg-article:last-child {
    margin-bottom: 0;
}
.oaii-reg-article-num {
    font-size: 15px;
    font-weight: 700;
    color: var(--oaii-text);
    margin: 0 0 8px;
    display: inline-block;
    background: #f0f5ff;
    color: var(--oaii-primary);
    padding: 2px 14px;
    border-radius: 4px;
}
.oaii-reg-article p {
    font-size: 14px;
    line-height: 1.9;
    color: var(--oaii-text);
    margin: 0 0 12px;
}
.oaii-reg-article p:last-child {
    margin-bottom: 0;
}
.oaii-reg-list {
    margin: 8px 0 14px;
    padding-left: 24px;
    list-style: decimal;
}
.oaii-reg-list li {
    font-size: 14px;
    line-height: 1.9;
    color: var(--oaii-text);
    margin-bottom: 6px;
}
.oaii-reg-list li strong {
    color: var(--oaii-primary);
}
.oaii-reg-chapter:last-child {
    margin-bottom: 0;
}

/* 知识产权下载列表 */
.oaii-rule-dl-list { max-width: 800px; }
.oaii-rule-dl-item {
    display: flex; align-items: center; justify-content: space-between;
    padding: 16px 20px; border: 1px solid var(--oaii-border);
    border-radius: 8px; background: #fff; margin-bottom: 10px;
    transition: box-shadow .2s, background .2s;
}
.oaii-rule-dl-item:hover { box-shadow: 0 2px 8px rgba(0,0,0,.06); }
.oaii-rule-dl-info {
    flex: 1; min-width: 0; padding-right: 16px;
    display: flex; flex-direction: column; gap: 2px;
}
.oaii-rule-dl-name {
    font-size: 15px; font-weight: 600; color: var(--oaii-text);
}
.oaii-rule-dl-meta {
    font-size: 12px; color: var(--oaii-text-light);
}
.oaii-rule-dl-btn {
    display: inline-flex; align-items: center; gap: 4px;
    padding: 8px 22px; font-size: 13px; font-weight: 600;
    color: #fff; background: var(--oaii-primary); border-radius: 6px;
    text-decoration: none; white-space: nowrap;
    transition: background .2s;
}
.oaii-rule-dl-btn:hover { background: #004bb5; color: #fff; }

@media (max-width: 768px) {
    .oaii-mechanism-grid--2cols {
        grid-template-columns: 1fr;
        max-width: 100%;
    }
    .oaii-modal-container {
        max-width: calc(100vw - 32px);
        max-height: 80vh;
        margin: 16px;
    }
    .oaii-rule-tab { padding: 12px 20px; font-size: 14px; }
    .oaii-reg-chapter { padding: 24px 20px; margin-bottom: 20px; }
    .oaii-reg-chapter-title { font-size: 17px; }
    .oaii-reg-article-num { font-size: 13px; }
    .oaii-reg-article p { font-size: 13px; }
    .oaii-reg-list li { font-size: 13px; }
    .oaii-rule-dl-item { flex-direction: column; align-items: flex-start; gap: 12px; }
    .oaii-rule-dl-info { padding-right: 0; }
    .oaii-rule-dl-btn { align-self: flex-end; }
}

/* 联系表单 */
.oaii-contact-form-wrapper { max-width: 640px; margin: 0 auto; }
.oaii-form .oaii-field { flex: 1; }
.oaii-form-row { display: flex; gap: 16px; margin-bottom: 20px; }
.oaii-field label { display: block; font-size: 13px; font-weight: 600; margin-bottom: 6px; color: var(--oaii-text); }
.oaii-field input,
.oaii-field textarea {
    width: 100%; padding: 10px 14px;
    border: 1px solid var(--oaii-border); border-radius: 8px;
    font-size: 14px; outline: none;
    transition: border-color .2s;
    font-family: inherit;
}
.oaii-field input:focus,
.oaii-field textarea:focus { border-color: var(--oaii-primary); }
.oaii-field textarea { resize: vertical; min-height: 120px; }


/* ========== 项目列表页 ========== */
.oaii-projects-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.oaii-project-card {
    background: #fff; border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius); overflow: hidden;
    transition: box-shadow .2s, transform .2s;
}
.oaii-project-card:hover { box-shadow: var(--oaii-shadow); transform: translateY(-3px); }
.oaii-project-thumb { height: 180px; background: var(--oaii-bg-alt); display: flex; align-items: center; justify-content: center; }
.oaii-placeholder-img { font-size: 48px; opacity: .2; }
.oaii-project-body { padding: 20px; }
.oaii-project-cat { font-size: 12px; color: var(--oaii-text-light); display: inline-block; margin-bottom: 8px; }
.oaii-project-body h3 { font-size: 16px; font-weight: 700; margin-bottom: 6px; }
.oaii-project-body p { font-size: 13px; color: var(--oaii-text-light); margin-bottom: 14px; }
.oaii-project-actions { display: flex; gap: 12px; align-items: center; }

/* 分页 */
.oaii-pagination { display: flex; justify-content: center; gap: 6px; margin-top: 40px; }
.oaii-page-link {
    width: 36px; height: 36px;
    display: flex; align-items: center; justify-content: center;
    border-radius: 8px; border: 1px solid var(--oaii-border);
    font-size: 14px; font-weight: 600;
    color: var(--oaii-text);
    transition: all .2s;
}
.oaii-page-link.active { background: var(--oaii-primary); color: #fff; border-color: var(--oaii-primary); }
.oaii-page-link.disabled { opacity: .4; pointer-events: none; }
.oaii-page-link:not(.disabled):hover { border-color: var(--oaii-primary); color: var(--oaii-primary); }


/* ========== 贡献页 ========== */
.oaii-contribute-ways { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 32px; }
.oaii-contribute-card {
    background: #fff; border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius); padding: 36px 28px; text-align: center;
    transition: box-shadow .2s;
}
.oaii-contribute-highlighted {
    background: linear-gradient(135deg, var(--oaii-primary), #0a2766);
    color: #fff; border-color: transparent;
}
.oaii-contribute-highlighted h3, .oaii-contribute-highlighted p { color: #fff; }
.oaii-contribute-card h3 { font-size: 18px; font-weight: 700; margin-bottom: 12px; }
.oaii-contribute-card p { font-size: 14px; opacity: .8; margin-bottom: 20px; line-height: 1.7; }
.oaii-contribute-highlighted .oaii-btn-outline { border-color: rgba(255,255,255,.5); color: #fff; }
.oaii-contribute-highlighted .oaii-btn-outline:hover { background: rgba(255,255,255,.15); }

.oaii-docs-block { margin-bottom: 40px; }
.oaii-docs-heading { font-size: 18px; font-weight: 700; margin-bottom: 16px; }
.oaii-docs-table-wrapper { overflow-x: auto; border: 1px solid var(--oaii-border); border-radius: var(--oaii-radius); }
.oaii-docs-table { width: 100%; border-collapse: collapse; }
.oaii-docs-table th, .oaii-docs-table td { padding: 12px 16px; text-align: left; font-size: 13px; border-bottom: 1px solid var(--oaii-border); }
.oaii-docs-table th { background: var(--oaii-bg-alt); font-weight: 700; }
.oaii-docs-cards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.oaii-doc-card-sm {
    background: #fff; border: 1px solid var(--oaii-border);
    border-radius: 8px; padding: 20px; text-align: center;
}
.oaii-doc-card-icon { font-size: 28px; margin-bottom: 10px; }
.oaii-doc-card-sm h4 { font-size: 13px; font-weight: 600; margin-bottom: 6px; }
.oaii-doc-meta { font-size: 12px; color: var(--oaii-text-light); display: block; margin: 8px 0 12px; }

.oaii-path-steps { display: flex; align-items: center; justify-content: center; gap: 16px; flex-wrap: wrap; }
.oaii-path-step { text-align: center; text-decoration: none; color: inherit; display: block; }
.oaii-path-step:hover { color: var(--oaii-primary); }
.oaii-path-step:hover .oaii-step-num { background: var(--oaii-primary-light); }
.oaii-step-num {
    width: 44px; height: 44px; border-radius: 50%;
    background: var(--oaii-primary); color: #fff;
    display: flex; align-items: center; justify-content: center;
    font-size: 18px; font-weight: 800; margin: 0 auto 8px;
}
.oaii-path-step h4 { font-size: 14px; font-weight: 600; }
.oaii-path-arrow { font-size: 20px; color: var(--oaii-text-light); }


/* ========== 锚点子导航栏 ========== */
.oaii-anchor-nav {
    position: sticky;
    top: var(--oaii-header-h, 60px);
    z-index: 50;
    background: #fff;
    border-bottom: 1px solid var(--oaii-border, #e5e7eb);
    box-shadow: 0 2px 8px rgba(0,0,0,.04);
}
.oaii-anchor-nav .oaii-container {
    display: flex;
    gap: 8px;
    padding-top: 0;
    padding-bottom: 0;
}
.oaii-anchor-nav-link {
    display: inline-block;
    padding: 14px 20px;
    font-size: 15px;
    font-weight: 500;
    color: var(--oaii-text-light, #6b7280);
    text-decoration: none;
    border-bottom: 3px solid transparent;
    transition: color .2s, border-color .2s;
    white-space: nowrap;
}
.oaii-anchor-nav-link:hover { color: var(--oaii-primary); }
.oaii-anchor-nav-link.active {
    color: var(--oaii-primary);
    border-bottom-color: var(--oaii-primary);
}

/* 锚点偏移（sticky header + sticky sub-nav） */
[id] { scroll-margin-top: 120px; }


/* ========== 贡献步骤流程 ========== */
.oaii-contribute-steps { background: #f5f7fa; }
.oaii-steps-flow {
    display: flex;
    align-items: stretch;
    justify-content: center;
    gap: 0;
    margin-top: 40px;
    flex-wrap: wrap;
}
.oaii-step-flow-item {
    flex: 1;
    min-width: 200px;
    max-width: 260px;
    text-align: center;
    padding: 32px 20px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 1px 4px rgba(0,0,0,.06);
}
.oaii-step-flow-num {
    display: inline-block;
    font-size: 28px;
    font-weight: 800;
    color: var(--oaii-primary);
    margin-bottom: 12px;
    line-height: 1;
}
.oaii-step-flow-item h4 { font-size: 16px; font-weight: 700; margin-bottom: 10px; }
.oaii-step-flow-item p { font-size: 14px; color: var(--oaii-text-light, #6b7280); line-height: 1.7; }
.oaii-step-flow-line {
    display: flex;
    align-items: center;
    padding: 0 12px;
    color: var(--oaii-border, #d1d5db);
    font-size: 24px;
}
.oaii-step-flow-line::before {
    content: '';
    display: block;
    width: 40px;
    height: 2px;
    background: var(--oaii-border, #d1d5db);
}


/* ========== 贡献协议卡片 ========== */
.oaii-contribute-agreement { background: #fff; }
.oaii-agreement-card {
    display: flex;
    align-items: center;
    gap: 32px;
    margin-top: 32px;
    padding: 32px;
    background: linear-gradient(135deg, #f0f6ff, #fff);
    border: 1px solid var(--oaii-border, #e5e7eb);
    border-radius: 16px;
}
.oaii-agreement-icon {
    flex-shrink: 0;
    width: 80px;
    height: 80px;
    border-radius: 16px;
    background: var(--oaii-primary);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}
.oaii-agreement-body { flex: 1; }
.oaii-agreement-body h3 { font-size: 18px; font-weight: 700; margin-bottom: 10px; }
.oaii-agreement-body p { font-size: 14px; color: var(--oaii-text-light, #6b7280); line-height: 1.7; margin-bottom: 12px; }
.oaii-agreement-points { list-style: none; padding: 0; margin: 0; }
.oaii-agreement-points li {
    font-size: 14px;
    color: var(--oaii-text, #374151);
    padding-left: 24px;
    position: relative;
    margin-bottom: 6px;
}
.oaii-agreement-points li::before {
    content: '\2713';
    position: absolute;
    left: 0;
    color: var(--oaii-primary);
    font-weight: 700;
}
.oaii-agreement-cta { flex-shrink: 0; }

@media (max-width: 768px) {
    .oaii-anchor-nav .oaii-container {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .oaii-anchor-nav-link { padding: 12px 16px; font-size: 14px; }
    .oaii-step-flow-line { display: none; }
    .oaii-step-flow-item { min-width: 100%; margin-bottom: 16px; }
    .oaii-agreement-card { flex-direction: column; text-align: center; gap: 20px; }
    .oaii-agreement-points li { text-align: left; }
}

/* --- 暗色 Hero --- */
.oaii-events-hero {
    background: var(--oaii-hero-bg);
    color: #fff;
    min-height: 350px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 60px 0;
    text-align: left;
    margin-top: var(--oaii-header-h);
    position: relative;
    overflow: hidden;
}
.oaii-events-hero h1 { font-size: 40px; font-weight: 800; margin: 0 0 8px; }
.oaii-events-hero p { font-size: 16px; color: rgba(255,255,255,.7); max-width: 760px; margin: 0 0 12px; }

/* --- OCP 区段 --- */
.ocp-section { padding: 56px 0; }
.ocp-section-gray { background: var(--oaii-bg-alt); }
.ocp-section-title {
    font-size: 22px;
    font-weight: 700;
    margin: 0 0 24px;
    color: var(--oaii-text);
}

/* --- 筛选栏 + 搜索框 --- */
.ocp-filters-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    margin-bottom: 32px;
    flex-wrap: wrap;
}
.ocp-filters {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
.ocp-filter-btn {
    padding: 8px 20px;
    border: 1px solid var(--oaii-border);
    border-radius: 20px;
    background: #fff;
    font-size: 13px;
    color: var(--oaii-text-light);
    cursor: pointer;
    transition: all .2s;
}
.ocp-filter-btn:hover { border-color: var(--oaii-primary); color: var(--oaii-primary); }
.ocp-filter-btn.active { background: var(--oaii-primary); color: #fff; border-color: var(--oaii-primary); }

/* --- 活动搜索框 --- */
.ocp-search-box {
    position: relative;
    display: flex;
    align-items: center;
    flex-shrink: 0;
}
.ocp-search-icon {
    position: absolute;
    left: 12px;
    color: var(--oaii-text-light);
    pointer-events: none;
}
#oaii-events-search-input {
    width: 220px;
    padding: 8px 32px 8px 36px;
    border: 1px solid var(--oaii-border);
    border-radius: 20px;
    font-size: 13px;
    color: var(--oaii-text);
    background: #fff;
    outline: none;
    transition: border-color .2s, box-shadow .2s;
}
#oaii-events-search-input:focus {
    border-color: var(--oaii-primary);
    box-shadow: 0 0 0 3px rgba(0, 95, 205, 0.1);
}
#oaii-events-search-input::placeholder { color: #94a3b8; }
.ocp-search-clear {
    position: absolute;
    right: 8px;
    background: none;
    border: none;
    font-size: 18px;
    color: #94a3b8;
    cursor: pointer;
    line-height: 1;
    padding: 2px 6px;
    border-radius: 50%;
    transition: all .2s;
}
.ocp-search-clear:hover { background: #f1f5f9; color: var(--oaii-text); }
.ocp-search-loading {
    padding: 40px;
    text-align: center;
    color: var(--oaii-text-light);
    font-size: 14px;
}

/* --- 分页导航 --- */
.ocp-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    margin-top: 24px;
    flex-wrap: wrap;
}
.ocp-page-btn {
    min-width: 36px;
    height: 36px;
    padding: 0 10px;
    border: 1px solid var(--oaii-border);
    border-radius: 6px;
    background: #fff;
    font-size: 13px;
    color: var(--oaii-text-light);
    cursor: pointer;
    transition: all .15s;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.ocp-page-btn:hover {
    border-color: var(--oaii-primary);
    color: var(--oaii-primary);
    background: rgba(0,95,205,.04);
}
.ocp-page-btn.active {
    background: var(--oaii-primary);
    color: #fff;
    border-color: var(--oaii-primary);
}
.ocp-page-btn:disabled {
    opacity: .4;
    cursor: not-allowed;
    pointer-events: none;
}
.ocp-page-ellipsis {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    font-size: 13px;
    color: var(--oaii-text-light);
}
.ocp-page-info {
    text-align: center;
    margin-top: 10px;
    font-size: 12px;
    color: var(--oaii-text-light);
}
@media (max-width: 768px) {
    .ocp-pagination { gap: 4px; }
    .ocp-page-btn { min-width: 32px; height: 32px; font-size: 12px; padding: 0 8px; }
}

/* --- 活动卡片列表 --- */
.ocp-event-list {
    display: flex;
    flex-direction: column;
    gap: 1px;
    background: var(--oaii-border);
    border: 1px solid var(--oaii-border);
    border-radius: 12px;
    overflow: hidden;
}
.ocp-event-row {
    display: grid;
    grid-template-columns: 120px 1fr 160px;
    gap: 24px;
    align-items: center;
    padding: 24px 28px;
    background: #fff;
    transition: background .15s;
    cursor: pointer;
}
.ocp-event-row:hover { background: var(--oaii-bg-alt); }

/* --- 日期区 --- */
.ocp-event-dates { text-align: center; }
.ocp-event-dates .ed-range {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: var(--oaii-primary);
}
.ocp-event-dates .ed-month {
    display: block;
    font-size: 12px;
    color: var(--oaii-text-light);
    margin-top: 2px;
}

/* --- 活动信息区 --- */
.ocp-event-info h3 {
    font-size: 16px;
    font-weight: 600;
    margin: 0 0 4px;
    color: var(--oaii-text);
}
.ocp-event-info .ei-location {
    font-size: 13px;
    color: var(--oaii-text-light);
    margin: 0 0 6px;
}
.ocp-event-info .ei-desc {
    font-size: 13px;
    color: var(--oaii-text-light);
    line-height: 1.6;
    margin: 0;
}
.ocp-event-info .ei-tags {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 8px;
}

/* --- 活动操作区 --- */
.ocp-event-action { text-align: right; display: flex; align-items: center; justify-content: flex-end; gap: 8px; }

/* 二维码触发按钮（列表页） */
.oaii-event-qrcode-trigger {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 90px;
    min-width: 90px;
    height: 90px;
    flex-shrink: 0;
    border: 1px solid var(--oaii-border);
    background: #fff;
    border-radius: 6px;
    cursor: pointer;
    transition: box-shadow .2s, border-color .2s;
    padding: 2px;
    overflow: hidden;
}
.oaii-event-qrcode-trigger:hover {
    border-color: var(--oaii-primary, #005fcd);
    box-shadow: 0 2px 8px rgba(16,58,151,.15);
}
.oaii-event-qrcode-trigger .oaii-event-qrcode-img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    border-radius: 4px;
    display: block;
}

/* 二维码弹窗 */
.oaii-qrcode-modal {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 9999;
    display: none;
    align-items: center;
    justify-content: center;
}
.oaii-qrcode-overlay {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,.5);
}
.oaii-qrcode-content {
    position: relative;
    background: #fff;
    border-radius: 12px;
    padding: 32px;
    max-width: 360px;
    width: 90%;
    text-align: center;
    box-shadow: 0 20px 60px rgba(0,0,0,.2);
    z-index: 1;
}
.oaii-qrcode-content h4 {
    margin: 0 0 20px;
    font-size: 18px;
    color: #1e293b;
}
.oaii-qrcode-content img {
    max-width: 240px;
    width: 100%;
    height: auto;
    border-radius: 8px;
    border: 1px solid var(--oaii-border);
}
.oaii-qrcode-close {
    position: absolute;
    top: 12px;
    right: 16px;
    background: none;
    border: none;
    font-size: 28px;
    color: #94a3b8;
    cursor: pointer;
    line-height: 1;
    padding: 0;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.oaii-qrcode-close:hover { color: #1e293b; }

/* --- 标签变体 --- */
.tag { display: inline-block; border-radius: 4px; font-weight: 500; }
.tag-sm { font-size: 11px; padding: 2px 10px; }
.tag-default { background: var(--oaii-bg-alt); color: var(--oaii-text-light); }
.tag-green { background: #dcfce7; color: #15803d; }
.tag-blue { background: #dbeafe; color: #1d4ed8; }
.tag-purple { background: #f3e8ff; color: #7c3aed; }
.tag-webinar { background: #f5f8fc; color: #0a2766; }
.tag-summit { background: #F0F0FF; color: #7C3AED; }
.tag-techday { background: #E6FAF3; color: #06D6A0; }
.tag-conference { background: #FFF3E6; color: #FF9F1C; }

/* --- 年分区 --- */
.ocp-year-label {
    font-size: 18px;
    font-weight: 700;
    color: var(--oaii-text-light);
    margin: 32px 0 16px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--oaii-border);
    background: #fff;
    padding: 16px 28px 8px;
}
.ocp-year-label:first-of-type { margin-top: 0; }

/* --- 空状态 --- */
.ocp-empty {
    text-align: center;
    padding: 48px 24px;
    color: var(--oaii-text-light);
    font-size: 14px;
    background: #fff;
    border-radius: 12px;
    border: 1px dashed var(--oaii-border);
}

/* --- Past Events 往期回顾 --- */
.ocp-past-header { text-align: left; }
.ocp-past-header h2 {
    font-size: 32px;
    font-weight: 800;
    color: var(--oaii-text);
    margin: 0;
}

/* --- 往期回顾网格 --- */
.ocp-past-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
.ocp-past-card {
    background: #fff;
    border-radius: 10px;
    padding: 24px;
    border: 1px solid var(--oaii-border);
    transition: box-shadow .2s;
}
.ocp-past-card:hover { box-shadow: 0 2px 8px rgba(0,0,0,.06); }
.ocp-past-card .pc-date {
    font-size: 12px;
    color: var(--oaii-text-light);
    margin-bottom: 6px;
}
.ocp-past-card h4 {
    font-size: 15px;
    font-weight: 600;
    margin: 0 0 8px;
    color: var(--oaii-text);
}
.ocp-past-card p {
    font-size: 13px;
    color: var(--oaii-text-light);
    line-height: 1.6;
    margin: 0 0 12px;
}
.ocp-past-card .pc-stats {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 12px;
}
.ocp-past-card .pc-stats span {
    font-size: 12px;
    color: var(--oaii-text-light);
}

/* --- 移动端 --- */
@media (max-width: 768px) {
    .ocp-event-row { grid-template-columns: 1fr; gap: 12px; }
    .ocp-event-dates { text-align: left; display: flex; gap: 8px; align-items: baseline; }
    .ocp-event-dates .ed-month { margin-top: 0; }
    .ocp-event-action { text-align: left; }
    .ocp-past-grid { grid-template-columns: 1fr; }
    .ocp-filters-wrap { flex-direction: column; align-items: stretch; }
    .ocp-search-box { width: 100%; }
    #oaii-events-search-input { width: 100%; }
}

/* ========== 成员页 ========== */
.oaii-members-toolbar { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px; margin-bottom: 32px; }
.oaii-search-sm input {
    padding: 8px 16px; border: 1px solid var(--oaii-border);
    border-radius: 20px; font-size: 13px; outline: none; width: 220px;
}

.oaii-members-content { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; }
.oaii-member-row {
    display: flex; align-items: center; gap: 12px;
    padding: 12px 16px; border-bottom: 1px solid var(--oaii-border);
    transition: background .15s;
}
.oaii-member-row:hover { background: var(--oaii-bg-alt); }
.oaii-member-logo-sm { width: 40px; height: 40px; border: 1px solid var(--oaii-border); border-radius: 6px; display: flex; align-items: center; justify-content: center; }
.oaii-member-name { flex: 1; font-weight: 600; font-size: 14px; }
.oaii-member-type-badge {
    font-size: 11px; padding: 3px 10px; border-radius: 10px;
    background: var(--oaii-bg-alt); color: var(--oaii-text-light);
}

.oaii-members-wall-col { background: var(--oaii-bg-alt); border-radius: var(--oaii-radius); padding: 24px; }
.oaii-members-wall-col h4 { font-size: 16px; font-weight: 700; margin-bottom: 16px; }
.oaii-logo-wall-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }


/* ========== 新闻页 ========== */
.oaii-news-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; }
.oaii-news-card {
    background: #fff; border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius); overflow: hidden;
    display: flex; gap: 20px;
    transition: box-shadow .2s;
}
.oaii-news-card:hover { box-shadow: var(--oaii-shadow); }
.oaii-news-thumb { width: 200px; flex-shrink: 0; background: var(--oaii-bg-alt); display: flex; align-items: center; justify-content: center; }
.oaii-news-body { padding: 20px 20px 20px 0; }
.oaii-tag {
    display: inline-block; padding: 2px 10px; border-radius: 4px;
    font-size: 11px; font-weight: 600; margin-right: 8px; margin-bottom: 6px;
}
.oaii-tag-blue  { background: #dbeafe; color: #1d4ed8; }
.oaii-tag-green { background: #dcfce7; color: #15803d; }
.oaii-tag-orange{ background: #eef2fb; color: #0d2f7a; }
.oaii-news-date { font-size: 12px; color: var(--oaii-text-light); }
.oaii-news-body h3 { font-size: 16px; font-weight: 700; margin: 6px 0 8px; }
.oaii-news-body h3 a { color: var(--oaii-text); }
.oaii-news-body h3 a:hover { color: var(--oaii-primary); }
.oaii-news-body p { font-size: 13px; color: var(--oaii-text-light); line-height: 1.6; margin-bottom: 10px; }


/* ========== 通用页面 ========== */
.oaii-page { padding: 48px 0; }
.oaii-page article { max-width: 780px; margin: 0 auto; padding: 0 24px; }
.oaii-page article .entry-title { font-size: 32px; font-weight: 800; margin-bottom: 16px; }
.oaii-page article .entry-meta { font-size: 13px; color: var(--oaii-text-light); margin-bottom: 24px; }
.oaii-page article .entry-content { font-size: 15px; line-height: 1.8; color: var(--oaii-text); }


/* ========== 通用模板 fallback ========== */
.index-page .oaii-post-grid,
.search-results .oaii-post-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.oaii-post-card { background: #fff; border: 1px solid var(--oaii-border); border-radius: var(--oaii-radius); overflow: hidden; transition: box-shadow .2s; }
.oaii-post-card:hover { box-shadow: var(--oaii-shadow); }
.oaii-post-card img { width: 100%; height: 180px; object-fit: cover; }
.oaii-post-card-body { padding: 20px; }
.oaii-post-card-body h2 { font-size: 16px; font-weight: 700; margin-bottom: 8px; }


/* ========== 文库中心（表格行布局） ========== */
.oaii-library-section { background: var(--oaii-bg-alt); min-height: 60vh; }

/* 工具栏 */
.oaii-library-toolbar {
    display: flex;
    gap: 16px;
    margin-bottom: 20px;
    align-items: center;
    flex-wrap: wrap;
}
.oaii-library-search-wrap {
    flex: 1;
    position: relative;
    min-width: 220px;
    max-width: 520px;
}
.oaii-library-search-icon {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--oaii-text-light);
    pointer-events: none;
    z-index: 1;
}
.oaii-library-search-input {
    width: 100%;
    padding: 12px 16px 12px 44px;
    border: 1px solid var(--oaii-border);
    border-radius: 10px;
    font-size: 14px;
    background: #fff;
    color: var(--oaii-text);
    transition: border-color .2s, box-shadow .2s;
}
.oaii-library-search-input:focus {
    outline: none;
    border-color: var(--oaii-primary);
    box-shadow: 0 0 0 3px rgba(16, 58, 151, .1);
}
.oaii-library-sort-wrap { flex-shrink: 0; }
.oaii-library-sort-select {
    padding: 12px 16px;
    border: 1px solid var(--oaii-border);
    border-radius: 10px;
    font-size: 14px;
    background: #fff;
    color: var(--oaii-text);
    cursor: pointer;
    transition: border-color .2s;
}
.oaii-library-sort-select:focus {
    outline: none;
    border-color: var(--oaii-primary);
}
.oaii-library-clear-search {
    display: inline-flex;
    align-items: center;
    font-size: 13px;
    color: var(--oaii-text-light);
    text-decoration: none;
    padding: 10px 14px;
    border: 1px solid var(--oaii-border);
    border-radius: 10px;
    background: #fff;
    transition: all .2s;
    flex-shrink: 0;
}
.oaii-library-clear-search:hover {
    color: var(--oaii-primary);
    border-color: var(--oaii-primary);
}

/* 结果统计 */
.oaii-library-results-info {
    font-size: 13px;
    color: var(--oaii-text-light);
    margin-bottom: 20px;
}
.oaii-library-results-info span {
    font-weight: 700;
    color: var(--oaii-primary);
}
.oaii-library-results-info em {
    font-style: normal;
    color: var(--oaii-text);
    font-weight: 600;
}

/* 表格容器 */
.oaii-library-table-wrap {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 10px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 24px;
}
.oaii-library-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
    min-width: 900px;
}
.oaii-library-table thead {
    background: #005fcd;
}
.oaii-library-table thead th {
    color: #fff;
    font-weight: 600;
    padding: 14px 16px;
    text-align: left;
    white-space: nowrap;
    border-right: 1px solid rgba(255,255,255,0.15);
}
.oaii-library-table thead th:last-child {
    border-right: none;
}
.oaii-library-table tbody tr {
    border-bottom: 1px solid #eef1f7;
    transition: background .15s;
}
.oaii-library-table tbody tr:hover {
    background: #f8faff;
}
.oaii-library-table tbody tr:last-child {
    border-bottom: none;
}
.oaii-library-table tbody td {
    padding: 15px 16px;
    color: var(--oaii-text);
    vertical-align: middle;
    line-height: 1.4;
}

/* 列宽控制 */
.oaii-lib-th-name { width: 50%; min-width: 240px; }
.oaii-lib-th-version { width: 100px; }
.oaii-lib-th-size { width: 100px; }
.oaii-lib-th-status { width: 90px; }
.oaii-lib-th-date { width: 120px; }
.oaii-lib-th-action { width: 130px; text-align: center; }
.oaii-lib-td-action { text-align: center; }

/* 文件名称 */
.oaii-library-file-link {
    display: inline-flex;
    align-items: flex-start;
    gap: 8px;
    color: var(--oaii-text);
    text-decoration: none;
    transition: color .2s;
}
.oaii-library-file-link:hover {
    color: var(--oaii-primary);
}
.oaii-library-file-icon {
    flex-shrink: 0;
    margin-top: 2px;
    color: var(--oaii-text-light);
}
.oaii-library-file-link:hover .oaii-library-file-icon {
    color: var(--oaii-primary);
}
.oaii-library-file-name-text {
    word-break: break-all;
    overflow-wrap: break-word;
}

/* 格式标签 */
.oaii-lib-format-badge {
    display: inline-block;
    padding: 2px 8px;
    background: rgba(16, 58, 151, .07);
    color: var(--oaii-primary);
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
}

/* 状态标签 */
.oaii-lib-status-badge {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}
.oaii-lib-status-pub { background: rgba(34, 197, 94, .1); color: #16a34a; }
.oaii-lib-status-upd { background: rgba(245, 158, 11, .1); color: #d97706; }
.oaii-lib-status-drf { background: rgba(59, 130, 246, .1); color: #3b82f6; }
.oaii-lib-status-inc { background: rgba(139, 92, 246, .1); color: #8b5cf6; }
.oaii-lib-status-prp { background: rgba(13, 148, 136, .1); color: #0d9488; }
.oaii-lib-status-upc { background: rgba(225, 29, 72, .1); color: #e11d48; }
.oaii-lib-status-rev { background: rgba(245, 158, 11, .1); color: #d97706; }
.oaii-lib-status-dft { background: rgba(100, 116, 139, .1); color: #64748b; }

/* 下载按钮 */
.oaii-lib-download-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 7px 16px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    background: var(--oaii-primary);
    color: #fff;
    text-decoration: none;
    white-space: nowrap;
    transition: background .2s, transform .15s;
    border: none;
    cursor: pointer;
}
.oaii-lib-download-btn:hover {
    background: var(--oaii-primary-dark);
    color: #fff;
    transform: translateY(-1px);
}

/* 登录下载按钮 */
.oaii-lib-login-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 7px 16px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    background: #fff;
    color: var(--oaii-primary);
    border: 1px solid var(--oaii-primary);
    text-decoration: none;
    white-space: nowrap;
    transition: all .2s;
    cursor: pointer;
}
.oaii-lib-login-btn:hover {
    background: var(--oaii-primary);
    color: #fff;
}

.oaii-lib-no-file {
    color: var(--oaii-text-light);
    font-size: 13px;
}

/* 空状态 */
.oaii-library-empty {
    text-align: center;
    padding: 64px 0;
    color: var(--oaii-text-light);
}
.oaii-library-empty svg {
    margin: 0 auto 16px;
    color: var(--oaii-border);
}
.oaii-library-empty p {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 4px;
}
.oaii-library-empty-sub {
    font-size: 13px !important;
    font-weight: 400 !important;
    color: var(--oaii-text-light);
}

/* 分页 */
.oaii-library-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    padding: 12px 0 8px;
    flex-wrap: wrap;
}
.oaii-pagination-links {
    display: flex;
    gap: 4px;
    align-items: center;
}
.oaii-pagination-links .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 10px;
    border: 1px solid var(--oaii-border);
    border-radius: 8px;
    font-size: 13px;
    font-weight: 500;
    color: var(--oaii-text);
    background: #fff;
    text-decoration: none;
    transition: all .2s;
}
.oaii-pagination-links .page-numbers:hover {
    border-color: var(--oaii-primary);
    color: var(--oaii-primary);
}
.oaii-pagination-links .page-numbers.current {
    background: var(--oaii-primary);
    color: #fff;
    border-color: var(--oaii-primary);
    font-weight: 700;
}
.oaii-pagination-links .page-numbers.dots {
    border: none;
    background: transparent;
    color: var(--oaii-text-light);
    min-width: 28px;
}
.oaii-pagination-links .page-numbers.dots:hover {
    color: var(--oaii-text-light);
    background: transparent;
    border: none;
}

/* 技术规范库 AJAX 分页按钮（替代 page-numbers 链接） */
.oaii-spec-page-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 10px;
    border: 1px solid var(--oaii-border);
    border-radius: 8px;
    font-size: 13px;
    font-weight: 500;
    color: var(--oaii-text);
    background: #fff;
    font-family: inherit;
    cursor: pointer;
    transition: all .2s;
}
.oaii-spec-page-btn:hover {
    border-color: var(--oaii-primary);
    color: var(--oaii-primary);
}
.oaii-spec-page-btn.current {
    background: var(--oaii-primary);
    color: #fff;
    border-color: var(--oaii-primary);
    font-weight: 700;
}
.oaii-spec-page-btn:disabled,
.oaii-spec-page-btn[disabled] {
    opacity: 0.4;
    cursor: not-allowed;
    pointer-events: none;
}

/* 跳转 */
.oaii-pagination-jump {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: var(--oaii-text-light);
    margin-left: 12px;
    flex-shrink: 0;
}
.oaii-pagination-jump-input {
    width: 48px;
    padding: 6px 8px;
    border: 1px solid var(--oaii-border);
    border-radius: 6px;
    font-size: 13px;
    text-align: center;
    color: var(--oaii-text);
}
.oaii-pagination-jump-input:focus {
    outline: none;
    border-color: var(--oaii-primary);
}
.oaii-pagination-jump-btn {
    padding: 6px 12px;
    border: 1px solid var(--oaii-primary);
    border-radius: 6px;
    background: #fff;
    color: var(--oaii-primary);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: all .2s;
}
.oaii-pagination-jump-btn:hover {
    background: var(--oaii-primary);
    color: #fff;
}

/* 文库中心响应式 */
@media (max-width: 960px) {
    .oaii-library-table {
        min-width: 780px;
    }
}
@media (max-width: 640px) {
    .oaii-library-toolbar { flex-direction: column; align-items: stretch; }
    .oaii-library-search-wrap { max-width: none; }
    .oaii-library-table-wrap { border-radius: 8px; }
    .oaii-library-table { min-width: 600px; font-size: 13px; }
    .oaii-library-table thead th { padding: 10px 10px; font-size: 12px; }
    .oaii-library-table tbody td { padding: 12px 10px; font-size: 12px; }
    .oaii-lib-download-btn,
    .oaii-lib-login-btn { padding: 5px 12px; font-size: 12px; }
    .oaii-pagination-jump { display: none; }
    .oaii-pagination-links .page-numbers { min-width: 32px; height: 32px; font-size: 12px; }
    .oaii-spec-page-btn { min-width: 32px; height: 32px; font-size: 12px; }
}

/* ========== 技术贡献页面 ========== */
.oaii-subtitle-desc { font-size: 14px; color: var(--oaii-text-light); margin: 4px 0 24px; }

/* 规范分类筛选 */
.oaii-specs-filter { display: flex; gap: 8px; margin-bottom: 24px; flex-wrap: wrap; }
.oaii-specs-filter-btn { padding: 6px 16px; border: 1px solid var(--oaii-border); border-radius: 20px; font-size: 13px; color: var(--oaii-text); background: #fff; cursor: pointer; transition: all .2s; }
.oaii-specs-filter-btn.active, .oaii-specs-filter-btn:hover { background: var(--oaii-primary); color: #fff; border-color: var(--oaii-primary); }

/* 规范表格 */
.oaii-specs-table-wrapper { border-radius: 8px; border: 1px solid var(--oaii-border); overflow-x: auto; }
.oaii-specs-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.oaii-specs-table th { background: rgba(16,58,151,.06); padding: 10px 16px; font-weight: 600; text-align: left; color: var(--oaii-primary); }
.oaii-specs-table td { padding: 12px 16px; border-bottom: 1px solid var(--oaii-border); }
.oaii-specs-table tr:last-child td { border-bottom: none; }
.oaii-specs-table tr[data-category] { transition: opacity .2s; }
.oaii-specs-table tr.hidden-spec { display: none; }
.oaii-specs-status { display: inline-block; padding: 2px 8px; border-radius: 4px; font-size: 12px; font-weight: 600; }
.oaii-specs-published { background: #e8f5e9; color: #2e7d32; }
.oaii-specs-updating { background: #fff3e0; color: #e65100; }
.oaii-specs-draft { background: #e8eaf6; color: #5c6bc0; }
.oaii-specs-no-download { color: var(--oaii-text-light); font-size: 13px; }
.oaii-specs-empty { text-align: center; padding: 40px 16px; color: var(--oaii-text-light); }

/* 核心价值卡片 (贡献指南页面使用 h4/p，about页面使用 .oaii-value-title/.oaii-value-desc) */
.oaii-value-card h4 { font-size: 16px; font-weight: 700; color: var(--oaii-primary); margin-bottom: 8px; }
.oaii-value-card p { font-size: 13px; color: var(--oaii-text-light); line-height: 1.6; }

/* 子页面导航卡片 */
.oaii-subnav-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.oaii-subnav-card { display: block; background: #fff; border: 1px solid var(--oaii-border); border-radius: 12px; padding: 28px; text-align: center; transition: all .2s; text-decoration: none; color: var(--oaii-text); }
.oaii-subnav-card:hover { border-color: var(--oaii-primary); box-shadow: 0 4px 16px rgba(16,58,151,.08); transform: translateY(-4px); }
.oaii-subnav-icon { margin-bottom: 16px; color: var(--oaii-primary); }
.oaii-subnav-card h4 { font-size: 18px; font-weight: 700; color: var(--oaii-primary); margin-bottom: 8px; }
.oaii-subnav-card p { font-size: 13px; color: var(--oaii-text-light); }

/* ========== 贡献指南页面 ========== */

/* 贡献流程流水线 */
.oaii-flow-pipeline { display: flex; align-items: flex-start; gap: 8px; flex-wrap: wrap; justify-content: center; }
.oaii-flow-step { background: #fff; border: 1px solid var(--oaii-border); border-radius: 12px; padding: 20px; width: 180px; text-align: center; position: relative; transition: all .2s; }
.oaii-flow-step:hover { border-color: var(--oaii-primary); box-shadow: 0 4px 12px rgba(16,58,151,.08); }
.oaii-flow-step-num { width: 32px; height: 32px; border-radius: 50%; background: var(--oaii-primary); color: #fff; font-weight: 700; font-size: 14px; display: inline-flex; align-items: center; justify-content: center; margin-bottom: 8px; }
.oaii-flow-step-end .oaii-flow-step-num { background: #64748b; }
.oaii-flow-step-body h4 { font-size: 14px; font-weight: 700; margin-bottom: 4px; }
.oaii-flow-step-body p { font-size: 12px; color: var(--oaii-text-light); line-height: 1.5; }
.oaii-flow-detail { margin-top: 8px; display: flex; flex-direction: column; gap: 4px; }
.oaii-flow-tag { display: inline-block; font-size: 11px; padding: 2px 8px; border-radius: 4px; }
.oaii-flow-tag-joint { background: #e3f2fd; color: #1565c0; }
.oaii-flow-tag-solo { background: #f3e5f5; color: #7b1fa2; }
.oaii-flow-connector { color: var(--oaii-primary); font-size: 20px; margin-top: 24px; font-weight: 700; }

/* CLA 协议 */
.oaii-cla-intro { font-size: 14px; line-height: 1.7; color: var(--oaii-text); margin-bottom: 24px; max-width: 800px; }
.oaii-cla-types { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; margin-bottom: 32px; }
.oaii-cla-type-card { background: #fff; border: 1px solid var(--oaii-border); border-radius: 12px; padding: 24px; text-align: center; }
.oaii-cla-type-card h4 { font-size: 18px; font-weight: 700; color: var(--oaii-primary); margin-bottom: 8px; }
.oaii-cla-type-desc { font-size: 13px; color: var(--oaii-text-light); margin-bottom: 8px; }
.oaii-cla-recommend { display: inline-block; background: #e8f5e9; color: #2e7d32; font-size: 12px; padding: 4px 12px; border-radius: 20px; font-weight: 600; }
.oaii-cla-note { display: inline-block; background: #fff3e0; color: #e65100; font-size: 12px; padding: 4px 12px; border-radius: 20px; }
.oaii-cla-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.oaii-cla-step { background: #fff; border: 1px solid var(--oaii-border); border-radius: 12px; padding: 20px; text-align: center; }
.oaii-cla-step-num { width: 28px; height: 28px; border-radius: 50%; background: var(--oaii-primary); color: #fff; font-weight: 700; font-size: 13px; display: inline-flex; align-items: center; justify-content: center; margin-bottom: 8px; }
.oaii-cla-step h4 { font-size: 14px; font-weight: 700; margin-bottom: 4px; }
.oaii-cla-step p { font-size: 12px; color: var(--oaii-text-light); line-height: 1.5; }

/* 规范编写资源 */
.oaii-resources-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.oaii-resource-card { background: #fff; border: 1px solid var(--oaii-border); border-radius: 8px; padding: 20px; text-align: center; transition: all .2s; }
.oaii-resource-card:hover { border-color: var(--oaii-primary); }
.oaii-resource-icon { font-size: 24px; margin-bottom: 8px; }
.oaii-resource-card h4 { font-size: 13px; font-weight: 600; margin-bottom: 4px; }
.oaii-resource-card p { font-size: 12px; color: var(--oaii-text-light); margin-bottom: 12px; }

/* 联系方式 */
.oaii-contact-box { background: rgba(16,58,151,.04); border-radius: 12px; padding: 32px; text-align: center; max-width: 600px; margin: 0 auto; }
.oaii-contact-box h3 { font-size: 16px; font-weight: 700; color: var(--oaii-primary); margin-bottom: 8px; }
.oaii-contact-box p { font-size: 14px; color: var(--oaii-text); }

/* ========== 代码规范(治理规范)页面 ========== */
.oaii-governance-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.oaii-governance-card { background: #fff; border: 1px solid var(--oaii-border); border-radius: 12px; overflow: hidden; transition: all .2s; }
.oaii-governance-card:hover { border-color: var(--oaii-primary); box-shadow: 0 4px 16px rgba(16,58,151,.08); }
.oaii-governance-card-header { background: rgba(16,58,151,.04); padding: 24px; text-align: center; }
.oaii-governance-icon { margin-bottom: 12px; }
.oaii-governance-card-header h3 { font-size: 18px; font-weight: 700; color: var(--oaii-primary); }
.oaii-governance-card-body { padding: 24px; }
.oaii-governance-card-body p { font-size: 14px; line-height: 1.7; color: var(--oaii-text); margin-bottom: 16px; }
.oaii-governance-points { list-style: none; padding: 0; margin: 0; }
.oaii-governance-points li { font-size: 13px; color: var(--oaii-text-light); padding: 4px 0; border-bottom: 1px solid var(--oaii-border); }
.oaii-governance-points li::before { content: '•'; color: var(--oaii-primary); margin-right: 8px; font-weight: 700; }
.oaii-governance-card-footer { padding: 16px 24px; border-top: 1px solid var(--oaii-border); display: flex; gap: 12px; justify-content: center; }

/* 团体标准文档列表 */
.oaii-standard-docs-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.oaii-standard-doc-item { background: #fff; border: 1px solid var(--oaii-border); border-radius: 8px; padding: 16px 20px; display: flex; align-items: center; gap: 12px; transition: all .2s; }
.oaii-standard-doc-item:hover { border-color: var(--oaii-primary); }
.oaii-standard-doc-type { display: inline-block; font-size: 11px; padding: 2px 8px; border-radius: 4px; font-weight: 600; white-space: nowrap; }
.oaii-type-form { background: #e3f2fd; color: #1565c0; }
.oaii-type-regulation { background: #f3e5f5; color: #7b1fa2; }
.oaii-standard-doc-meta { display: flex; align-items: center; gap: 8px; margin-bottom: 4px; flex-wrap: wrap; }
.oaii-standard-doc-item h4 { font-size: 13px; font-weight: 600; }
.oaii-standard-doc-item p { font-size: 12px; color: var(--oaii-text-light); margin-left: auto; }
.oaii-standard-doc-item .oaii-btn-xs { margin-left: 8px; }

/* ========== 社区动态页面 ========== */

/* 置顶公告 */
.oaii-sticky-notice { background: rgba(16,58,151,.04); border: 1px solid var(--oaii-primary); border-radius: 8px; padding: 16px 20px; margin-bottom: 24px; display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.oaii-sticky-label { font-size: 12px; font-weight: 600; color: var(--oaii-primary); background: rgba(16,58,151,.1); padding: 4px 12px; border-radius: 20px; white-space: nowrap; }
.oaii-sticky-item { font-size: 14px; color: var(--oaii-text); display: flex; align-items: center; gap: 8px; }
.oaii-sticky-item:hover { color: var(--oaii-primary); }
.oaii-sticky-date { font-size: 12px; color: var(--oaii-text-light); }

/* 新闻工具栏 */
.oaii-news-toolbar { display: flex; justify-content: space-between; align-items: center; margin-bottom: 24px; gap: 16px; flex-wrap: wrap; }
.oaii-news-search { display: flex; gap: 0; }
.oaii-news-search input { padding: 8px 12px; border: 1px solid var(--oaii-border); border-radius: 8px 0 0 8px; font-size: 14px; width: 200px; outline: none; }
.oaii-news-search input:focus { border-color: var(--oaii-primary); }
.oaii-news-search-btn { padding: 8px 16px; background: var(--oaii-primary); color: #fff; border-radius: 0 8px 8px 0; cursor: pointer; border: none; }

/* 月刊卡片 */
.oaii-monthly-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.oaii-monthly-card { background: #fff; border: 1px solid var(--oaii-border); border-radius: 12px; overflow: hidden; transition: all .2s; }
.oaii-monthly-card:hover { border-color: var(--oaii-primary); box-shadow: 0 4px 12px rgba(16,58,151,.08); }
.oaii-monthly-cover { width: 100%; height: 200px; overflow: hidden; background: #f5f5f5; }
.oaii-monthly-cover img { width: 100%; height: 100%; object-fit: cover; }
.oaii-monthly-cover-placeholder { display: flex; align-items: center; justify-content: center; }
.oaii-monthly-info { padding: 20px; }
.oaii-monthly-info h4 { font-size: 16px; font-weight: 700; margin-bottom: 8px; }
.oaii-monthly-info p { font-size: 13px; color: var(--oaii-text-light); line-height: 1.6; margin-bottom: 12px; }

/* 年刊卡片 */
.oaii-annual-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 32px; }
.oaii-annual-card { background: #fff; border: 1px solid var(--oaii-border); border-radius: 12px; overflow: hidden; transition: all .2s; display: flex; gap: 0; }
.oaii-annual-card:hover { border-color: var(--oaii-primary); box-shadow: 0 4px 16px rgba(16,58,151,.08); }
.oaii-annual-cover { width: 240px; min-height: 320px; background: #f5f5f5; overflow: hidden; }
.oaii-annual-cover img { width: 100%; height: 100%; object-fit: cover; }
.oaii-annual-cover-placeholder { display: flex; align-items: center; justify-content: center; min-height: 320px; }
.oaii-annual-info { padding: 28px; flex: 1; }
.oaii-annual-info h4 { font-size: 20px; font-weight: 700; margin-bottom: 12px; }
.oaii-annual-info p { font-size: 14px; line-height: 1.7; color: var(--oaii-text-light); margin-bottom: 16px; }
.oaii-annual-tags { margin-bottom: 16px; }
.oaii-btn-disabled { opacity: .5; cursor: not-allowed; pointer-events: none; }

/* 发展历程时间轴 */
.oaii-dev-timeline { position: relative; padding-left: 40px; max-width: 700px; margin: 0 auto; }
.oaii-dev-timeline::before { content: ''; position: absolute; left: 16px; top: 0; bottom: 0; width: 2px; background: var(--oaii-border); }
.oaii-dev-item { position: relative; padding-bottom: 32px; }
.oaii-dev-year { font-size: 14px; font-weight: 700; color: var(--oaii-primary); margin-bottom: 4px; }
.oaii-dev-marker { position: absolute; left: -32px; top: 4px; width: 14px; height: 14px; border-radius: 50%; background: var(--oaii-primary); border: 3px solid #fff; box-shadow: 0 0 0 2px var(--oaii-border); }
.oaii-dev-marker-current { background: #F47920; box-shadow: 0 0 0 2px #F47920; }
.oaii-dev-content h4 { font-size: 15px; font-weight: 700; margin-bottom: 4px; }
.oaii-dev-content p { font-size: 13px; color: var(--oaii-text-light); line-height: 1.6; }

/* ========== 社区动态页面 V2（按原型重构） ========== */

/* 青色标签 */
.oaii-tag-cyan { background: #cffafe; color: #0e7490; }

/* 双列布局：主内容 + 侧边栏 */
.oaii-news-layout {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 40px;
    align-items: start;
}

/* 搜索栏 */
.oaii-news-search-bar {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 24px;
}
.oaii-news-search-bar input {
    flex: 1;
    padding: 12px 20px;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    font-size: 14px;
    font-family: inherit;
    background: #fff;
    transition: border-color .2s;
    outline: none;
}
.oaii-news-search-bar input:focus {
    border-color: var(--oaii-primary);
    box-shadow: 0 0 0 3px rgba(16, 58, 151, .1);
}
.oaii-news-search-bar input::placeholder { color: var(--oaii-text-light); }
.oaii-news-search-bar .oaii-btn { white-space: nowrap; padding: 12px 28px; }
/* 按钮样式继承全局 .oaii-btn-primary（白底蓝边框蓝文字） */

.oaii-news-filter-bar { margin-bottom: 28px; }
.oaii-news-filter-bar .oaii-filter-btn {
    display: inline-block;
    text-decoration: none;
    text-align: center;
}

/* 新闻卡片网格（4列） */
.oaii-news-grid-v2 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 32px;
}

/* 新闻卡片 */
.oaii-news-card-v2 {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: box-shadow .2s, border-color .2s;
}
.oaii-news-card-v2:hover {
    box-shadow: 0 4px 16px rgba(16, 58, 151, .1);
    border-color: var(--oaii-primary);
}

/* 卡片图片区 */
.oaii-news-card-v2-img {
    height: 130px;
    background: linear-gradient(135deg, rgba(16, 58, 151, .08), #eef2fb);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 40px;
    overflow: hidden;
}
.oaii-news-card-v2-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.oaii-news-card-v2-img a { display: block; width: 100%; height: 100%; }
.oaii-news-card-v2-img-placeholder {
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #E8EEFB 0%, #D6E3FA 100%);
    position: relative;
}
.oaii-news-card-v2-img-placeholder::before {
    content: '';
    position: absolute;
    inset: 0;
    margin: auto;
    width: 48px;
    height: 48px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='none' stroke='%231a3b8c' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='2' ry='2'/%3E%3Ccircle cx='8.5' cy='8.5' r='1.5'/%3E%3Cpolyline points='21 15 16 10 5 21'/%3E%3C/svg%3E") no-repeat center;
    opacity: .25;
}

/* 卡片正文 */
.oaii-news-card-v2-body {
    padding: 20px;
    flex: 1;
    display: flex;
    flex-direction: column;
}
.oaii-news-card-v2-body .oaii-tag { align-self: flex-start; width: auto; margin-bottom: 10px; }
.oaii-news-card-v2-body h3 {
    font-size: 16px;
    font-weight: 600;
    color: var(--oaii-text);
    margin-bottom: 8px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.5;
}
.oaii-news-card-v2-body h3 a { color: inherit; text-decoration: none; }
.oaii-news-card-v2-body h3 a:hover { color: var(--oaii-primary); }
.oaii-news-card-v2-body p {
    font-size: 13px;
    color: var(--oaii-text-light);
    line-height: 1.7;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* 卡片底部 */
.oaii-news-card-v2-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 20px;
    border-top: 1px solid var(--oaii-border);
    font-size: 12px;
    color: var(--oaii-text-light);
}
.oaii-news-read-more {
    color: var(--oaii-primary);
    text-decoration: none;
    font-weight: 500;
    transition: color .2s;
}
.oaii-news-read-more:hover { color: var(--oaii-primary-light); }

/* 空状态 */
.oaii-news-empty {
    grid-column: 1 / -1;
    text-align: center;
    padding: 60px 20px;
    color: var(--oaii-text-light);
}

/* ========== 侧边栏 ========== */
.oaii-news-sidebar-card {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 24px;
    margin-bottom: 24px;
}
.oaii-news-sidebar-card h4 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--oaii-border);
}

/* 热门列表 */
.oaii-news-hot-list { list-style: none; margin: 0; padding: 0; }
.oaii-news-hot-list li {
    padding: 12px 0;
    border-bottom: 1px solid var(--oaii-border);
}
.oaii-news-hot-list li:last-child { border-bottom: none; }
.oaii-news-hot-list a {
    font-size: 13px;
    color: var(--oaii-text);
    text-decoration: none;
    display: block;
    line-height: 1.5;
    transition: color .2s;
}
.oaii-news-hot-list a:hover { color: var(--oaii-primary); }

/* 年刊条目 */
.oaii-news-annual-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 0 !important;
    border-bottom: 1px solid var(--oaii-border) !important;
}
.oaii-news-annual-item:last-child { border-bottom: none !important; }
.oaii-news-annual-icon {
    font-size: 32px;
    flex-shrink: 0;
    line-height: 1;
}
.oaii-news-annual-info { display: flex; flex-direction: column; gap: 2px; }
.oaii-news-annual-info a {
    font-size: 14px;
    font-weight: 600;
    color: var(--oaii-text);
    text-decoration: none;
}
.oaii-news-annual-info a:hover { color: var(--oaii-primary); }
.oaii-news-annual-title-disabled {
    font-size: 14px;
    font-weight: 600;
    color: var(--oaii-text-light);
}
.oaii-news-annual-desc {
    font-size: 12px;
    color: var(--oaii-text-light);
}
.oaii-news-annual-download {
    display: inline-flex !important;
    align-items: center;
    gap: 4px;
    margin-top: 4px;
    font-size: 12px !important;
    font-weight: 600;
    color: var(--oaii-primary) !important;
    background: rgba(16, 58, 151, 0.08);
    padding: 4px 12px;
    border-radius: 6px;
    text-decoration: none !important;
    transition: all 0.2s;
    width: fit-content;
}
.oaii-news-annual-download:hover {
    background: var(--oaii-primary);
    color: #fff !important;
}
.oaii-news-annual-download svg {
    flex-shrink: 0;
}

/* ========== 社区年刊模块（底部） ========== */
.oaii-news-annual-section {
    background: #F5F7FA;
    padding-top: 60px;
    padding-bottom: 80px;
}
.oaii-news-annual-header {
    text-align: center;
    margin-bottom: 40px;
}
.oaii-news-annual-header h2 {
    font-size: 26px;
    font-weight: 700;
    color: var(--oaii-text);
    margin-bottom: 10px;
}
.oaii-news-annual-header p {
    font-size: 14px;
    color: var(--oaii-text-light);
}
.oaii-news-annual-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    max-width: 900px;
    margin: 0 auto;
}
.oaii-news-annual-card {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 32px;
    box-shadow: 0 2px 12px rgba(16, 58, 151, .04);
}
.oaii-news-annual-card h3 {
    font-size: 18px;
    font-weight: 700;
    color: var(--oaii-text);
    margin-bottom: 12px;
}
.oaii-news-annual-card p {
    font-size: 13px;
    color: var(--oaii-text-light);
    line-height: 1.7;
    margin-bottom: 12px;
}
.oaii-news-annual-card-desc p:last-child {
    margin-bottom: 24px;
}
.oaii-news-annual-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 20px;
    font-size: 13px;
}
.oaii-news-annual-btn.oaii-btn-disabled {
    background: #e2e8f0;
    border-color: #e2e8f0;
    color: var(--oaii-text-light);
    opacity: 1;
}
.oaii-news-annual-empty {
    grid-column: 1 / -1;
    text-align: center;
    padding: 40px 20px;
    color: var(--oaii-text-light);
}
.oaii-news-annual-size {
    font-weight: 400;
    opacity: .8;
}

/* ========== 响应式 ========== */
@media (max-width: 1200px) {
    .oaii-news-grid-v2 { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 1024px) {
    .oaii-news-layout { grid-template-columns: 1fr; }
    .oaii-news-grid-v2 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
    .oaii-news-grid-v2 { grid-template-columns: 1fr; }
    .oaii-news-search-bar { flex-direction: column; }
    .oaii-news-search-bar .oaii-btn { width: 100%; }
    .oaii-news-annual-grid { grid-template-columns: 1fr; }
    .oaii-news-annual-card { padding: 24px; }
}

/* ========== 404 页面 ========== */
.oaii-error-page { display: flex; align-items: center; justify-content: center; min-height: 50vh; text-align: center; }
.oaii-error-code { font-size: 96px; font-weight: 900; color: var(--oaii-primary); line-height: 1; }
.oaii-error-msg { font-size: 20px; margin: 16px 0 24px; color: var(--oaii-text-light); }


/* ========== 组织架构页面 ========== */

/* 架构概述 */
.oaii-org-overview { padding-top: 40px; }

/* 架构图主体 */
.oaii-org-chart-full {
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
}

/* 层级 */
.oaii-org-tier {
    display: flex;
    justify-content: center;
    gap: 24px;
    flex-wrap: wrap;
}

/* 连接线 */
.oaii-org-connector-v {
    width: 2px;
    height: 32px;
    background: var(--oaii-border);
    margin: 0 auto;
}

/* 架构卡片 */
.oaii-org-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px 28px;
    background: #fff;
    border: 2px solid var(--oaii-border);
    border-radius: 12px;
    min-width: 200px;
    transition: all .25s ease;
    text-decoration: none;
    color: var(--oaii-text);
    position: relative;
}
.oaii-org-card:hover {
    border-color: var(--oaii-primary);
    box-shadow: 0 4px 20px rgba(16, 58, 151, .12);
    transform: translateY(-2px);
}
.oaii-org-card.oaii-org-card-top {
    border-color: var(--oaii-primary);
    background: linear-gradient(135deg, #f0f4ff 0%, #fff 100%);
}
.oaii-org-card.oaii-org-card-mgmt {
    border-color: var(--oaii-accent);
    background: linear-gradient(135deg, #fff5ed 0%, #fff 100%);
}
.oaii-org-card.oaii-org-card-tech {
    border-color: #6366f1;
    background: linear-gradient(135deg, #f0f0ff 0%, #fff 100%);
}
.oaii-org-card.oaii-org-card-secretariat,
.oaii-org-card.oaii-org-card-group {
    cursor: default;
}
.oaii-org-card.oaii-org-card-secretariat:hover,
.oaii-org-card.oaii-org-card-group:hover {
    border-color: var(--oaii-border);
    box-shadow: none;
    transform: none;
}

.oaii-org-card-icon { font-size: 32px; margin-bottom: 8px; }
.oaii-org-card h3 { font-size: 16px; font-weight: 700; margin: 0 0 4px; color: var(--oaii-text); }
.oaii-org-card p { font-size: 13px; color: var(--oaii-text-light); margin: 0; }
.oaii-org-card-link {
    font-size: 12px;
    color: var(--oaii-primary);
    margin-top: 8px;
    font-weight: 600;
}

/* 项目群网格 */
.oaii-org-projects-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-top: 24px;
}
.oaii-org-project-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 8px;
    text-decoration: none;
    color: var(--oaii-text);
    transition: all .2s ease;
}
.oaii-org-project-item:hover {
    border-color: var(--oaii-primary);
    box-shadow: 0 2px 8px rgba(0,0,0,.06);
    transform: translateY(-1px);
}
.oaii-org-project-icon { font-size: 24px; flex-shrink: 0; }
.oaii-org-project-info { display: flex; flex-direction: column; text-align: left; }
.oaii-org-project-info strong { font-size: 14px; color: var(--oaii-text); }
.oaii-org-project-info span { font-size: 12px; color: var(--oaii-text-light); margin-top: 2px; }

/* 其他工作组 */
.oaii-org-other-groups {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 20px;
    flex-wrap: wrap;
}
.oaii-org-other-item {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    background: #f1f5f9;
    border-radius: 20px;
    font-size: 13px;
    color: var(--oaii-text-light);
}
.oaii-org-other-icon { font-size: 16px; }

/* 各委员会简介卡片 */
.oaii-committees-intro-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.oaii-committee-intro-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 32px 24px;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 12px;
    text-decoration: none;
    color: var(--oaii-text);
    transition: all .25s ease;
}
.oaii-committee-intro-card:hover {
    border-color: var(--oaii-primary);
    box-shadow: 0 8px 30px rgba(0,0,0,.08);
    transform: translateY(-4px);
}
.oaii-committee-intro-icon { font-size: 40px; margin-bottom: 16px; }
.oaii-committee-intro-card h3 { font-size: 18px; font-weight: 700; margin: 0 0 12px; }
.oaii-committee-intro-card p { font-size: 14px; color: var(--oaii-text-light); line-height: 1.7; margin: 0 0 16px; flex-grow: 1; }
.oaii-committee-intro-link { font-size: 14px; color: var(--oaii-primary); font-weight: 600; }


/* ========== 委员会成员页面 ========== */

/* 委员会切换导航 */
.oaii-committee-nav-wrapper {
    background: #fff;
    border-bottom: 1px solid var(--oaii-border);
    position: sticky;
    top: var(--oaii-header-h);
    z-index: 50;
}
.oaii-committee-nav {
    display: flex;
    gap: 8px;
    padding: 12px 0;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}
.oaii-committee-nav::-webkit-scrollbar { display: none; }

.oaii-committee-nav-item {
    flex-shrink: 0;
    padding: 8px 18px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 500;
    color: var(--oaii-text-light);
    text-decoration: none;
    background: #f1f5f9;
    transition: all .2s ease;
    white-space: nowrap;
}
.oaii-committee-nav-item:hover {
    background: #e2e8f0;
    color: var(--oaii-text);
}
.oaii-committee-nav-item.active {
    background: var(--oaii-primary);
    color: #fff;
    font-weight: 600;
}

/* ========== 技术贡献卡片式切换导航 ========== */
.oaii-tech-tabs {
    background: #fff;
    border-bottom: 1px solid var(--oaii-border);
    padding: 20px 0;
}
.oaii-tech-tabs-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}
.oaii-tech-tab {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 20px;
    border: 2px solid var(--oaii-border);
    border-radius: 12px;
    text-decoration: none;
    background: #fff;
    transition: all .2s ease;
    color: var(--oaii-text);
}
.oaii-tech-tab:hover {
    border-color: var(--oaii-primary);
    box-shadow: 0 4px 16px rgba(16,58,151,.08);
    transform: translateY(-2px);
}
.oaii-tech-tab.active {
    border-color: var(--oaii-primary);
    background: var(--oaii-primary);
    color: #fff;
}
.oaii-tech-tab.active .oaii-tech-tab-desc { color: rgba(255,255,255,.85); }
.oaii-tech-tab-icon {
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: rgba(16,58,151,.08);
    color: var(--oaii-primary);
    transition: all .2s ease;
}
.oaii-tech-tab.active .oaii-tech-tab-icon {
    background: rgba(255,255,255,.2);
    color: #fff;
}
.oaii-tech-tab-icon svg { width: 24px; height: 24px; }
.oaii-tech-tab-body { flex: 1; min-width: 0; }
.oaii-tech-tab-title {
    font-size: 15px;
    font-weight: 700;
    margin: 0 0 2px 0;
    line-height: 1.3;
}
.oaii-tech-tab-desc {
    font-size: 12px;
    color: var(--oaii-text-light);
    margin: 0;
    line-height: 1.4;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
@media (max-width: 768px) {
    .oaii-tech-tabs-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
    .oaii-tech-tab { padding: 12px 14px; gap: 10px; }
    .oaii-tech-tab-icon { width: 36px; height: 36px; }
    .oaii-tech-tab-icon svg { width: 20px; height: 20px; }
    .oaii-tech-tab-title { font-size: 14px; }
    .oaii-tech-tab-desc { font-size: 11px; }
}

/* 页面标题图标 */
.oaii-page-title-icon {
    margin-right: 8px;
    font-size: 0.9em;
}

/* 成员卡片网格 */
.oaii-members-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.oaii-member-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 28px 20px;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 12px;
    transition: all .25s ease;
}
.oaii-member-card:hover {
    border-color: var(--oaii-primary);
    box-shadow: 0 8px 30px rgba(0,0,0,.06);
    transform: translateY(-2px);
}

.oaii-member-avatar {
    width: 88px;
    height: 88px;
    border-radius: 50%;
    overflow: hidden;
    margin-bottom: 16px;
    border: 3px solid var(--oaii-border);
    background: #f1f5f9;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.oaii-member-photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.oaii-member-avatar-placeholder {
    color: var(--oaii-text-light);
    opacity: .4;
}

.oaii-member-info {
    width: 100%;
}
.oaii-member-role {
    display: inline-block;
    padding: 2px 12px;
    background: #fff5ed;
    color: var(--oaii-accent);
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
    margin-bottom: 8px;
}
.oaii-member-name {
    font-size: 18px;
    font-weight: 700;
    margin: 0 0 4px;
    color: var(--oaii-text);
}
.oaii-member-company {
    font-size: 13px;
    color: var(--oaii-text-light);
    margin: 0 0 12px;
}
.oaii-member-bio {
    font-size: 13px;
    color: var(--oaii-text-light);
    line-height: 1.6;
    text-align: left;
    border-top: 1px solid var(--oaii-border);
    padding-top: 12px;
    margin-top: 4px;
}

/* 空状态 */
.oaii-members-empty {
    text-align: center;
    padding: 60px 20px;
    color: var(--oaii-text-light);
}
.oaii-members-empty svg {
    color: var(--oaii-border);
    margin-bottom: 16px;
}
.oaii-members-empty h3 {
    font-size: 18px;
    color: var(--oaii-text);
    margin: 0 0 8px;
}
.oaii-members-empty p {
    font-size: 14px;
    max-width: 400px;
    margin: 0 auto;
}

/* 组织架构 & 委员会页面响应式 */
@media (max-width: 960px) {
    .oaii-org-projects-grid { grid-template-columns: repeat(2, 1fr); }
    .oaii-committees-intro-grid { grid-template-columns: 1fr; max-width: 500px; margin: 0 auto; }
    .oaii-members-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
    .oaii-org-tier { gap: 12px; }
    .oaii-org-card { min-width: 140px; padding: 16px 14px; }
    .oaii-org-card h3 { font-size: 14px; }
    .oaii-org-card p { font-size: 12px; }
    .oaii-org-projects-grid { grid-template-columns: 1fr; }
    .oaii-org-project-item { padding: 12px 14px; }
    .oaii-org-other-groups { gap: 8px; }
    .oaii-org-other-item { padding: 6px 12px; font-size: 12px; }
    .oaii-members-grid { grid-template-columns: 1fr; max-width: 400px; margin: 0 auto; }
    .oaii-member-card { padding: 24px 16px; }
    .oaii-committee-nav { gap: 6px; }
    .oaii-committee-nav-item { padding: 6px 14px; font-size: 13px; }
}


/* ========== 响应式适配 ========== */

/* 平板 (<=1024px) */
@media (max-width: 1024px) {
    .oaii-intro-grid { grid-template-columns: 1fr; gap: 32px; }
    .oaii-stats-grid { grid-template-columns: repeat(4, 1fr); }
    .oaii-values-grid { grid-template-columns: repeat(2, 1fr); }
    .oaii-mechanism-grid { grid-template-columns: 1fr; }
    .oaii-mech-download-row { flex-direction: column; align-items: flex-start; gap: 12px; }
    .oaii-mech-download-main { padding-right: 0; }
    .oaii-contribute-ways { grid-template-columns: 1fr; }
    .oaii-projects-grid { grid-template-columns: repeat(2, 1fr); }
    .oaii-events-grid { grid-template-columns: 1fr; }
    .oaii-news-grid { grid-template-columns: 1fr; }
    .oaii-members-content { grid-template-columns: 1fr; }
    .oaii-footer-inner { grid-template-columns: repeat(3, 1fr); gap: 32px; }
    .oaii-footer-brand { grid-column: 1 / -1; }
    .oaii-footer-contact { grid-column: 1 / -1; }
    .oaii-milestones-summary { grid-template-columns: repeat(2, 1fr); }
    .oaii-docs-cards { grid-template-columns: repeat(2, 1fr); }
    .oaii-docs-grid { grid-template-columns: repeat(2, 1fr); }
}

/* 手机 (<=860px) - 导航折叠 */
@media (max-width: 860px) {
    :root { --oaii-header-h: 58px; }
    .oaii-logo-img { height: 32px; }
    .oaii-nav, .oaii-search-box { display: none !important; }  /* 隐藏桌面导航和搜索 */
    .oaii-nav .oaii-mega-menu { display: none !important; }  /* 隐藏桌面 Mega Menu（不影响移动端侧边栏） */
    .oaii-hamburger { display: flex; margin-left: auto; width: 40px; height: 40px; justify-content: center; align-items: center; }  /* 显示汉堡按钮并推至最右侧 */
    header .oaii-header-right .oaii-login-btn { display: none !important; }  /* 手机端隐藏桌面登录按钮，移入侧边菜单 */
    header .oaii-user-menu { display: none !important; }  /* 手机端隐藏顶部用户菜单（移入侧边栏） */

    .oaii-page-title { font-size: 28px; }
    .oaii-section-title { font-size: 26px; }
    .oaii-section { padding: 48px 0; }
    .oaii-banner-card { padding: 32px 24px; }
    .oaii-banner-title { font-size: 22px; }

    .oaii-stats-grid { grid-template-columns: repeat(2, 1fr); }
    .oaii-stat-number { font-size: 28px; }
    .oaii-values-grid { grid-template-columns: 1fr; }

    .oaii-projects-grid { grid-template-columns: 1fr; }
    .oaii-org-row { flex-wrap: wrap; }
    .oaii-org-node { min-width: 140px; }
    .oaii-org-bottom { gap: 10px; }
    .oaii-org-sm { min-width: 110px; font-size: 11px; padding: 14px 10px; }
    .oaii-timeline-list .oaii-timeline-date { position: static; display: block; margin-bottom: 4px; font-size: 12px; }
    .oaii-timeline-list { padding-left: 20px; }
    .oaii-timeline-list .oaii-timeline-dot { left: -26px; }
    .oaii-milestones-summary { grid-template-columns: 1fr 1fr; }
    .oaii-form-row { flex-direction: column; }

    .oaii-footer-inner { grid-template-columns: repeat(3, 1fr); gap: 24px; }
    .oaii-footer-brand { grid-column: 1 / -1; }
    .oaii-footer-contact { grid-column: 1 / -1; }
    .oaii-footer-heading { font-size: 14px; margin-bottom: 12px; }
    .oaii-footer-links li { margin-bottom: 6px; }
    .oaii-footer-links a { font-size: 12px; }
    .oaii-footer-desc { font-size: 12px; margin-top: 8px; }
    .oaii-footer-contact-list .oaii-contact-item { margin-bottom: 10px; font-size: 12px; }
    .oaii-logo-wall-grid { grid-template-columns: repeat(3, 1fr); }
    .oaii-docs-cards { grid-template-columns: 1fr; }

    /* 移动端搜索框在侧边菜单中显示 */
    .oaii-mobile-search { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--oaii-border); }
    .oaii-mobile-search input { width: 100%; padding: 10px 14px; border: 1px solid var(--oaii-border); border-radius: 8px; font-size: 14px; }
    .oaii-mobile-search button { display: block; width: 100%; margin-top: 8px; padding: 10px; background: var(--oaii-primary); color: #fff; border-radius: 8px; border: none; cursor: pointer; }

    /* 移动端用户操作链接 */
    .oaii-mobile-user-actions {
        margin-top: 12px;
        display: flex;
        flex-direction: column;
        gap: 4px;
    }
    .oaii-mobile-action-link {
        display: flex; align-items: center; gap: 8px;
        padding: 10px 16px; font-size: 14px;
        color: var(--oaii-text); text-decoration: none;
        border-radius: 8px; transition: background .15s;
    }
    .oaii-mobile-action-link:hover { background: rgba(16,58,151,.05); color: var(--oaii-primary); }
    .oaii-mobile-action-link svg { flex-shrink: 0; }
    .oaii-mobile-logout { color: #d32f2f; }
    .oaii-mobile-logout:hover { background: #fde8e8; color: #d32f2f; }

    /* 移动端用户入口 */
    .oaii-mobile-user { padding-bottom: 16px; margin-bottom: 8px; border-bottom: 1px solid var(--oaii-border); }
    .oaii-mobile-user-link { display: flex; align-items: center; gap: 12px; text-decoration: none; color: var(--oaii-text); }
    .oaii-mobile-user-avatar { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; border: 2px solid var(--oaii-border); }
    .oaii-mobile-user-name { font-size: 15px; font-weight: 600; }
    .oaii-mobile-user-name small { font-size: 12px; font-weight: 400; color: var(--oaii-text-light); }
    .oaii-mobile-login-btn { display: block; text-align: center; padding: 12px; background: #fff; color: var(--oaii-primary); border: 1px solid var(--oaii-primary); border-radius: 10px; font-size: 14px; font-weight: 600; text-decoration: none; }

    /* 首页 banner 移动端适配由插件 frontend.css 处理 */

    /* 汉堡动画 */
    .oaii-hamburger.is-open .oaii-hamburger-line:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
    .oaii-hamburger.is-open .oaii-hamburger-line:nth-child(2) { opacity: 0; }
    .oaii-hamburger.is-open .oaii-hamburger-line:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }
}

/* 小手机 (<=480px) */
@media (max-width: 480px) {
    .oaii-container { padding: 0 16px; }
    .oaii-stats-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
    .oaii-stat-number { font-size: 24px; }
    .oaii-logo-grid .oaii-logo-item { width: 90px; height: 55px; font-size: 9px; }
    .oaii-news-thumb { width: 100px; }
    .oaii-news-card { flex-direction: column; }
    .oaii-news-body { padding: 16px; }
    .oaii-carousel { aspect-ratio: 4/3; }
    .oaii-banner-card { padding: 24px 20px; }
    .oaii-banner-title { font-size: 19px; }

    /* 小屏手机 banner 适配由插件 frontend.css 处理 */

    /* 内置静态 banner fallback */
}

/* ============================================
   文章列表 / 文章详情样式
   ============================================ */
.oaii-main { padding-top: 0px; }

/* 文章网格 */
.oaii-posts-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    margin-bottom: 40px;
}

.oaii-post-card {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
    transition: transform 0.2s, box-shadow 0.2s;
}
.oaii-post-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0,0,0,0.10);
}

.oaii-post-thumb {
    display: block;
    aspect-ratio: 16/9;
    overflow: hidden;
    background: var(--oaii-bg);
}
.oaii-post-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s;
}
.oaii-post-card:hover .oaii-post-thumb img {
    transform: scale(1.05);
}

.oaii-post-body { padding: 20px 24px 24px; }

.oaii-post-title {
    font-size: 18px;
    font-weight: 600;
    margin: 0 0 10px;
    line-height: 1.4;
}
.oaii-post-title a {
    color: var(--oaii-text);
    text-decoration: none;
}
.oaii-post-title a:hover { color: var(--oaii-primary); }

.oaii-post-meta {
    display: flex;
    gap: 16px;
    font-size: 13px;
    color: var(--oaii-text-light);
    margin-bottom: 10px;
}
.oaii-post-date, .oaii-post-author { display: inline-flex; align-items: center; gap: 4px; }

.oaii-post-excerpt {
    font-size: 14px;
    color: var(--oaii-text-light);
    line-height: 1.7;
    margin-bottom: 16px;
}

/* 分页 */
.oaii-pagination {
    display: flex;
    justify-content: center;
    margin: 40px 0 60px;
}
.oaii-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    margin: 0 3px;
    padding: 0 10px;
    border-radius: 8px;
    font-size: 14px;
    color: var(--oaii-text);
    text-decoration: none;
    background: #fff;
    border: 1px solid var(--oaii-border);
    transition: all 0.2s;
}
.oaii-pagination .page-numbers.current,
.oaii-pagination .page-numbers:hover {
    background: var(--oaii-primary);
    color: #fff;
    border-color: var(--oaii-primary);
}

/* 空状态 */
.oaii-empty {
    text-align: center;
    padding: 80px 20px;
    color: var(--oaii-text-light);
    font-size: 16px;
}

/* ============================================
   手机适配 - 文章列表
   ============================================ */
@media (max-width: 700px) {
    .oaii-posts-grid { grid-template-columns: 1fr; }
    .oaii-post-body { padding: 16px; }
    .oaii-post-title { font-size: 16px; }
}

/* ============================================
   活动日历 — 两栏布局（左侧日历 + 右侧列表）
   由 oaii-events 插件 [events_calendar_list] 短代码生成
   ============================================ */

/* 两栏容器 */
.oaii-events-calendar-list-wrapper {
    display: flex;
    gap: 2em;
    align-items: flex-start;
    margin: 1.5em 0;
}

/* 左栏：日历组件 */
.oaii-events-calendar-left {
    flex: 0 0 340px;
    min-width: 0;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(0,0,0,0.08);
    padding: 1.25em;
    border: 1px solid #e8ecf4;
}

.oaii-events-calendar-left .oaii-cal-nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.8em;
    padding-bottom: 0.8em;
    border-bottom: 1px solid #e8ecf4;
}

.oaii-events-calendar-left .oaii-cal-current-month {
    font-size: 1.05em;
    font-weight: 700;
    color: var(--oaii-primary, #005fcd);
}

.oaii-events-calendar-left .oaii-cal-prev-btn,
.oaii-events-calendar-left .oaii-cal-next-btn {
    background: #f0f2f5;
    border: none;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 1.1em;
    color: #555;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
}

.oaii-events-calendar-left .oaii-cal-prev-btn:hover,
.oaii-events-calendar-left .oaii-cal-next-btn:hover {
    background: var(--oaii-primary, #005fcd);
    color: #fff;
}

/* 星期头 */
.oaii-events-calendar-left .oaii-cal-weekdays {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
    margin-bottom: 4px;
}

.oaii-events-calendar-left .oaii-cal-weekdays div {
    text-align: center;
    font-size: 0.78em;
    color: #888;
    padding: 0.35em 0;
    font-weight: 600;
}

/* 日期格子 */
.oaii-events-calendar-left .oaii-cal-days {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
}

.oaii-events-calendar-left .oaii-cal-day {
    aspect-ratio: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 0.85em;
    transition: background 0.15s;
    position: relative;
}

.oaii-events-calendar-left .oaii-cal-day:hover {
    background: #f0f2f5;
}

.oaii-events-calendar-left .oaii-cal-day.other-month {
    color: #ccc;
}

.oaii-events-calendar-left .oaii-cal-day.today {
    background: #f5f8fc;
    color: var(--oaii-primary, #005fcd);
    font-weight: 700;
}

.oaii-events-calendar-left .oaii-cal-day.has-events {
    background: transparent;
    color: var(--oaii-primary, #005fcd) !important;
    font-weight: 600;
}

.oaii-events-calendar-left .oaii-cal-day.has-events:hover {
    background: #f0f2f5;
}

.oaii-events-calendar-left .oaii-cal-day.selected {
    box-shadow: none;
}

.oaii-events-calendar-left .oaii-cal-day-event-dot {
    width: 4px;
    height: 4px;
    background: var(--oaii-accent, #005fcd);
    border-radius: 50%;
    margin-top: 1px;
}

/* 右栏：筛选 + 列表 */
.oaii-events-calendar-right {
    flex: 1;
    min-width: 0;
}

/* 分类筛选栏 */
.oaii-events-filter-bar {
    display: flex;
    gap: 0.5em;
    margin-bottom: 1.2em;
    flex-wrap: wrap;
}

.oaii-events-filter-btn {
    padding: 0.45em 1.1em;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    background: #fff;
    color: #444;
    font-size: 0.85em;
    cursor: pointer;
    transition: all 0.2s;
    white-space: nowrap;
}

.oaii-events-filter-btn:hover {
    border-color: var(--oaii-primary, #005fcd);
    color: var(--oaii-primary, #005fcd);
}

.oaii-events-filter-btn.active {
    background: var(--oaii-primary, #005fcd);
    color: #fff;
    border-color: var(--oaii-primary, #005fcd);
}

/* 活动列表容器 */
.oaii-events-list-container {
    display: flex;
    flex-direction: column;
    gap: 0.9em;
}

/* 活动项（卡片式） */
.oaii-events-list-container .oaii-event-item {
    display: flex;
    gap: 1em;
    padding: 1em;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 1px 6px rgba(0,0,0,0.05);
    border: 1px solid #f0f0f0;
    transition: box-shadow 0.2s, transform 0.2s;
}

.oaii-events-list-container .oaii-event-item:hover {
    box-shadow: 0 4px 16px rgba(0,0,0,0.10);
    transform: translateY(-1px);
}

.oaii-events-list-container .oaii-event-thumb {
    flex: 0 0 140px;
    border-radius: 8px;
    overflow: hidden;
    background: #f5f5f5;
}

.oaii-events-list-container .oaii-event-thumb img {
    width: 100%;
    height: 105px;
    object-fit: cover;
    display: block;
}

.oaii-events-list-container .oaii-event-content {
    flex: 1;
    min-width: 0;
}

.oaii-events-list-container .oaii-event-meta-top {
    display: flex;
    gap: 0.7em;
    align-items: center;
    margin-bottom: 0.35em;
    font-size: 0.82em;
    flex-wrap: wrap;
}

.oaii-events-list-container .oaii-event-cat {
    background: var(--oaii-primary, #005fcd);
    color: #fff;
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 0.9em;
    white-space: nowrap;
}

.oaii-events-list-container .oaii-event-date {
    color: #777;
}

.oaii-events-list-container .oaii-event-title {
    margin: 0.2em 0 0.4em;
    font-size: 1.05em;
    line-height: 1.4;
}

.oaii-events-list-container .oaii-event-title a {
    color: var(--oaii-text, #1a202c);
    text-decoration: none;
    font-weight: 600;
}

.oaii-events-list-container .oaii-event-title a:hover {
    color: var(--oaii-accent, #005fcd);
}

.oaii-events-list-container .oaii-event-excerpt {
    color: #666;
    font-size: 0.88em;
    line-height: 1.55;
    margin-bottom: 0.5em;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.oaii-events-list-container .oaii-event-meta-bottom {
    display: flex;
    gap: 0.8em;
    align-items: center;
    font-size: 0.82em;
    color: #888;
    flex-wrap: wrap;
}

.oaii-events-list-container .oaii-event-location {
    display: inline-flex;
    align-items: center;
    gap: 3px;
}

.oaii-events-list-container .oaii-btn-sm {
    display: inline-block;
    padding: 0.3em 0.9em;
    background: var(--oaii-primary, #005fcd);
    color: #fff;
    border-radius: 5px;
    text-decoration: none;
    font-size: 0.85em;
    transition: background 0.2s;
}

.oaii-events-list-container .oaii-btn-sm:hover {
    background: var(--oaii-accent, #005fcd);
}

/* 空状态 */
.oaii-no-events {
    text-align: center;
    color: #999;
    padding: 2.5em 1em;
    font-style: italic;
}

/* 响应式：小屏幕变单栏 */
@media (max-width: 860px) {
    .oaii-events-calendar-list-wrapper {
        flex-direction: column;
    }
    .oaii-events-calendar-left,
    .oaii-project-events .oaii-events-calendar-left {
        flex: none;
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
    }
    .oaii-events-list-container .oaii-event-item {
        flex-direction: column;
    }
    .oaii-events-list-container .oaii-event-thumb {
        flex: none;
        width: 100%;
    }
    .oaii-events-list-container .oaii-event-thumb img {
        height: 180px;
    }
    .oaii-scope-work-grid,
    .oaii-work-items {
        grid-template-columns: 1fr;
    }
    .oaii-leaders-grid {
        grid-template-columns: 1fr;
    }
    .oaii-members-grid {
        grid-template-columns: 1fr;
    }
    .oaii-project-subgroups {
        grid-template-columns: 1fr;
    }
    .oaii-project-cta {
        padding: 32px 0 48px;
    }
    /* 新增板块响应式 */
    .oaii-values-grid, .oaii-subnav-grid { grid-template-columns: 1fr; }
    .oaii-flow-pipeline { flex-direction: column; align-items: stretch; }
    .oaii-flow-connector { display: none; }
    .oaii-flow-step { width: 100%; }
    .oaii-cla-types { grid-template-columns: 1fr; }
    .oaii-cla-steps { grid-template-columns: repeat(2, 1fr); }
    .oaii-resources-grid { grid-template-columns: 1fr; }
    .oaii-governance-grid { grid-template-columns: 1fr; }
    .oaii-standard-docs-list { grid-template-columns: 1fr; }
    .oaii-specs-table { font-size: 12px; }
    .oaii-specs-table th, .oaii-specs-table td { padding: 8px 8px; }
    .oaii-news-toolbar { flex-direction: column; align-items: stretch; }
    .oaii-news-search input { width: 100%; }
    .oaii-monthly-grid { grid-template-columns: 1fr; }
    .oaii-annual-grid { grid-template-columns: 1fr; }
    .oaii-annual-card { flex-direction: column; }
    .oaii-annual-cover { width: 100%; min-height: 200px; }
}

/* ============================================================
   文章详情页（single.php）
============================================================ */
.oaii-single-wrap {
    padding: 32px 0 60px;
    background: var(--oaii-bg);
}

.oaii-breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
    font-size: 13px;
    color: var(--oaii-text-light);
    margin-bottom: 24px;
}
.oaii-breadcrumb a {
    color: var(--oaii-text-light);
    text-decoration: none;
    transition: color .15s;
}
.oaii-breadcrumb a:hover { color: var(--oaii-primary); }
.oaii-bc-sep { margin: 0 2px; opacity: 0.5; }

.oaii-single-article {
    background: var(--oaii-bg);
}

/* 文章头 */
.oaii-article-header { margin-bottom: 28px; }

.oaii-article-cats {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 12px;
}
.oaii-article-cat {
    display: inline-block;
    padding: 3px 12px;
    background: rgba(16, 58, 151, 0.08);
    color: var(--oaii-primary);
    border-radius: 4px;
    font-size: 12px;
    font-weight: 500;
    text-decoration: none;
    transition: all .15s;
}
.oaii-article-cat:hover {
    background: rgba(16, 58, 151, 0.15);
}

.oaii-article-title {
    font-size: 30px;
    font-weight: 600;
    color: var(--oaii-text);
    line-height: 1.35;
    margin-bottom: 14px;
}

.oaii-article-meta {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
    font-size: 13px;
    color: var(--oaii-text-light);
}
.oaii-article-meta span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

/* 特色图片 */
.oaii-article-featured {
    margin: 0 0 28px;
    border-radius: var(--oaii-radius);
    overflow: hidden;
    box-shadow: var(--oaii-shadow);
}
.oaii-article-featured img {
    width: 100%;
    height: auto;
    display: block;
}

/* 摘要 */
.oaii-article-lead {
    font-size: 17px;
    color: var(--oaii-text-light);
    line-height: 1.7;
    padding: 16px 20px;
    background: var(--oaii-bg-alt);
    border-left: 4px solid var(--oaii-primary);
    border-radius: 0 8px 8px 0;
    margin-bottom: 28px;
}

/* 正文 */
.oaii-article-content {
    font-size: 16px;
    line-height: 1.8;
    color: var(--oaii-text);
}
.oaii-article-content p { margin-bottom: 1.2em; }
.oaii-article-content h2 { font-size: 24px; font-weight: 600; margin: 1.5em 0 0.6em; }
.oaii-article-content h3 { font-size: 20px; font-weight: 600; margin: 1.3em 0 0.5em; }
.oaii-article-content h4 { font-size: 17px; font-weight: 600; margin: 1.2em 0 0.4em; }
.oaii-article-content ul, .oaii-article-content ol { margin: 0 0 1.2em 1.5em; }
.oaii-article-content li { margin-bottom: 0.4em; }
.oaii-article-content blockquote {
    margin: 1.5em 0;
    padding: 12px 20px;
    background: var(--oaii-bg-alt);
    border-left: 4px solid var(--oaii-primary);
    border-radius: 0 6px 6px 0;
    color: var(--oaii-text-light);
    font-style: italic;
}
.oaii-article-content pre {
    margin: 1.2em 0;
    padding: 16px 20px;
    background: #1e293b;
    color: #e2e8f0;
    border-radius: 8px;
    overflow-x: auto;
    font-size: 14px;
    line-height: 1.5;
}
.oaii-article-content code {
    font-family: "SF Mono", "Fira Code", monospace;
    font-size: 0.9em;
}
.oaii-article-content pre code { background: none; color: inherit; padding: 0; }
.oaii-article-content :not(pre) > code {
    background: var(--oaii-bg-alt);
    padding: 2px 6px;
    border-radius: 4px;
    color: var(--oaii-primary);
}
.oaii-article-content img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    margin: 1em 0;
}
.oaii-article-content a {
    color: var(--oaii-primary);
    text-decoration: underline;
    text-decoration-color: rgba(16, 58, 151, 0.3);
    transition: text-decoration-color .15s;
}
.oaii-article-content a:hover { text-decoration-color: var(--oaii-primary); }
.oaii-article-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 1.2em 0;
    font-size: 14px;
}
.oaii-article-content th, .oaii-article-content td {
    padding: 10px 14px;
    border: 1px solid var(--oaii-border);
    text-align: left;
}
.oaii-article-content th { background: var(--oaii-bg-alt); font-weight: 600; }

/* 文章内分页 */
.oaii-page-links {
    margin: 24px 0;
    text-align: center;
}
.oaii-page-links span {
    display: inline-block;
    padding: 6px 12px;
    margin: 0 3px;
    border: 1px solid var(--oaii-border);
    border-radius: 4px;
    font-size: 14px;
}
.oaii-page-links span > span { border: none; padding: 0; }

/* 标签 */
.oaii-article-tags {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin: 24px 0 0;
    padding-top: 20px;
    border-top: 1px solid var(--oaii-border);
}
.oaii-tag {
    display: inline-block;
    padding: 4px 12px;
    background: var(--oaii-bg-alt);
    color: var(--oaii-text-light);
    border-radius: 4px;
    font-size: 13px;
    text-decoration: none;
    transition: all .15s;
}
.oaii-tag:hover {
    background: rgba(16, 58, 151, 0.08);
    color: var(--oaii-primary);
}

/* 文章尾 */
.oaii-article-footer {
    margin-top: 32px;
    padding-top: 24px;
    border-top: 1px solid var(--oaii-border);
}
.oaii-article-actions {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

/* 分享栏 */
.oaii-share-bar {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.oaii-share-label {
    font-size: 13px;
    color: var(--oaii-text-light);
    margin-right: 4px;
}
.oaii-share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--oaii-bg-alt);
    color: var(--oaii-text-light);
    border: none;
    cursor: pointer;
    text-decoration: none;
    transition: all .15s;
}
.oaii-share-btn:hover {
    background: var(--oaii-primary);
    color: #fff;
}

/* 上下篇导航 */
.oaii-post-nav {
    display: flex;
    gap: 16px;
    margin: 40px 0;
    flex-wrap: wrap;
}
.oaii-post-nav-item {
    flex: 1;
    min-width: 240px;
    padding: 16px 20px;
    background: var(--oaii-bg);
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    text-decoration: none;
    transition: all .15s;
}
.oaii-post-nav-item:hover {
    border-color: var(--oaii-primary);
    box-shadow: var(--oaii-shadow);
}
.oaii-post-nav-dir {
    display: block;
    font-size: 12px;
    color: var(--oaii-text-light);
    margin-bottom: 6px;
}
.oaii-post-nav-title {
    display: block;
    font-size: 15px;
    font-weight: 500;
    color: var(--oaii-text);
    line-height: 1.4;
}
.oaii-post-nav-next { text-align: right; }

/* 评论区域 */
.oaii-comments-area {
    margin-top: 40px;
    padding-top: 32px;
    border-top: 1px solid var(--oaii-border);
}

/* ============================================================
   文章详情侧边栏
============================================================ */
.oaii-single-layout {
    display: flex;
    gap: 32px;
    align-items: flex-start;
}
.oaii-single-main {
    flex: 1;
    min-width: 0;
}
.oaii-single-sidebar {
    width: 320px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding-top: 48px;
}

.oaii-sidebar-block {
    background: var(--oaii-bg);
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 20px;
}
.oaii-sidebar-block-title {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 16px;
    font-weight: 600;
    color: var(--oaii-text);
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--oaii-border);
}

/* -- 阅读排行榜 -- */
.oaii-sidebar-ranking {
    list-style: none;
    padding: 0;
    margin: 0;
}
.oaii-ranking-item {
    display: flex;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px dashed var(--oaii-border);
    align-items: flex-start;
}
.oaii-ranking-item:last-child { border-bottom: none; }
.oaii-ranking-num {
    width: 24px;
    height: 24px;
    border-radius: 6px;
    background: var(--oaii-bg-alt);
    color: var(--oaii-text-light);
    font-size: 12px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.oaii-ranking-top {
    background: var(--oaii-accent);
    color: #fff;
}
.oaii-ranking-info {
    flex: 1;
    min-width: 0;
}
.oaii-ranking-title {
    font-size: 14px;
    font-weight: 500;
    color: var(--oaii-text);
    line-height: 1.4;
    display: block;
    text-decoration: none;
    transition: color .15s;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.oaii-ranking-title:hover { color: var(--oaii-primary); }
.oaii-ranking-meta {
    display: flex;
    gap: 8px;
    font-size: 12px;
    color: var(--oaii-text-light);
    margin-top: 4px;
}
.oaii-ranking-cat {
    color: var(--oaii-primary);
    font-weight: 500;
}
.oaii-ranking-empty {
    text-align: center;
    color: var(--oaii-text-light);
    font-size: 14px;
    padding: 20px 0;
    list-style: none;
}

/* -- 最新下载 -- */
.oaii-sidebar-downloads {
    list-style: none;
    padding: 0;
    margin: 0;
}
.oaii-download-item {
    padding: 12px 0;
    border-bottom: 1px dashed var(--oaii-border);
}
.oaii-download-item:last-child { border-bottom: none; }
.oaii-download-title {
    font-size: 14px;
    font-weight: 500;
    color: var(--oaii-text);
    line-height: 1.4;
    text-decoration: none;
    transition: color .15s;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.oaii-download-title:hover { color: var(--oaii-primary); }
.oaii-download-meta {
    display: flex;
    gap: 6px;
    font-size: 12px;
    color: var(--oaii-text-light);
    margin-top: 4px;
    align-items: center;
}
.oaii-download-tag {
    display: inline-block;
    padding: 2px 8px;
    background: rgba(16, 58, 151, 0.08);
    color: var(--oaii-primary);
    border-radius: 4px;
    font-weight: 500;
}
.oaii-download-version {
    color: var(--oaii-accent);
    font-weight: 600;
}
.oaii-download-date { color: var(--oaii-text-light); }
.oaii-download-link {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-top: 6px;
    font-size: 13px;
    color: var(--oaii-primary);
    font-weight: 500;
    text-decoration: none;
    transition: color .15s;
}
.oaii-download-link:hover { color: var(--oaii-primary-light); }

/* -- 热门下载排行 -- */
.oaii-popular-list .oaii-popular-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}
.oaii-popular-rank {
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 700;
    line-height: 22px;
    text-align: center;
    color: var(--oaii-text-light);
    background: rgba(0,0,0,.05);
    margin-top: 1px;
}
.oaii-popular-rank.rank-1 {
    background: linear-gradient(135deg, #f0c350, #e8a520);
    color: #fff;
}
.oaii-popular-rank.rank-2 {
    background: linear-gradient(135deg, #c0c0c0, #a8a8a8);
    color: #fff;
}
.oaii-popular-rank.rank-3 {
    background: linear-gradient(135deg, #cd9b6e, #b8855a);
    color: #fff;
}
.oaii-popular-body { flex: 1; min-width: 0; }
.oaii-download-count {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    color: var(--oaii-text-light);
}
.oaii-download-count::before {
    content: '\2193';
    font-weight: 700;
}

/* -- 最新活动 -- */
.oaii-sidebar-events {
    list-style: none;
    padding: 0;
    margin: 0;
}
.oaii-sidebar-events .oaii-event-item {
    display: flex;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px dashed var(--oaii-border);
    align-items: flex-start;
}
.oaii-sidebar-events .oaii-event-item:last-child { border-bottom: none; }
.oaii-event-date-badge {
    width: 48px;
    height: 48px;
    border-radius: 8px;
    background: rgba(16, 58, 151, 0.08);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-weight: 700;
}
.oaii-event-month {
    font-size: 10px;
    color: var(--oaii-primary-light);
    text-transform: uppercase;
    line-height: 1;
}
.oaii-event-day {
    font-size: 18px;
    color: var(--oaii-primary);
    line-height: 1.1;
}
.oaii-event-info {
    flex: 1;
    min-width: 0;
}
.oaii-event-title {
    font-size: 14px;
    font-weight: 500;
    color: var(--oaii-text);
    line-height: 1.4;
    text-decoration: none;
    transition: color .15s;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.oaii-event-title:hover { color: var(--oaii-primary); }
.oaii-event-tag {
    display: inline-block;
    padding: 2px 8px;
    background: rgba(16, 58, 151, 0.08);
    color: var(--oaii-primary-light);
    border-radius: 4px;
    font-size: 12px;
    font-weight: 500;
    margin-top: 4px;
}
.oaii-sidebar-more {
    display: block;
    text-align: center;
    padding: 10px 0;
    font-size: 14px;
    font-weight: 500;
    color: var(--oaii-primary);
    text-decoration: none;
    border-top: 1px solid var(--oaii-border);
    margin-top: 8px;
    transition: color .15s;
}
.oaii-sidebar-more:hover { color: var(--oaii-primary-light); }

/* ============================================================
   搜索页（search.php）
============================================================ */
.oaii-search-page {
    margin: 0 0 32px;
}
.oaii-search-page form {
    display: flex;
    gap: 12px;
    max-width: 600px;
}
.oaii-search-page-input {
    flex: 1;
    padding: 12px 18px;
    border: 2px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    font-size: 15px;
    transition: border-color .15s;
}
.oaii-search-page-input:focus {
    outline: none;
    border-color: var(--oaii-primary);
}

.oaii-search-empty {
    text-align: center;
    padding: 80px 20px;
}
.oaii-search-empty .oaii-empty-icon {
    margin-bottom: 16px;
}
.oaii-search-empty h3 {
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 8px;
    color: var(--oaii-text);
}
.oaii-search-empty p {
    color: var(--oaii-text-light);
    margin-bottom: 20px;
}

/* ============================================================
   搜索结果 — 横排新闻列表
============================================================ */
.oaii-search-news-list {
    display: flex;
    flex-direction: column;
    gap: 0;
}
.oaii-search-news-item {
    display: flex;
    gap: 24px;
    padding: 24px 0;
    border-bottom: 1px solid var(--oaii-border);
    align-items: flex-start;
}
.oaii-search-news-item:first-child { padding-top: 0; }
.oaii-search-news-thumb {
    flex-shrink: 0;
    width: 200px;
    height: 130px;
    overflow: hidden;
    border-radius: var(--oaii-radius);
    background: var(--oaii-bg);
    display: block;
}
.oaii-search-news-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s;
}
.oaii-search-news-item:hover .oaii-search-news-thumb img {
    transform: scale(1.05);
}
.oaii-search-news-noimg {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    font-size: 12px;
    color: var(--oaii-text-light);
}
.oaii-search-news-body {
    flex: 1;
    min-width: 0;
}
.oaii-search-news-meta {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 6px;
}
.oaii-search-news-cat {
    font-size: 13px;
    font-weight: 600;
    color: var(--oaii-primary);
    background: rgba(16,58,151,.08);
    padding: 2px 10px;
    border-radius: 4px;
}
.oaii-search-news-date {
    font-size: 13px;
    color: var(--oaii-text-light);
}
.oaii-search-news-title {
    font-size: 18px;
    font-weight: 600;
    margin: 0 0 8px;
    line-height: 1.4;
}
.oaii-search-news-title a {
    color: var(--oaii-text);
    text-decoration: none;
    transition: color .15s;
}
.oaii-search-news-title a:hover {
    color: var(--oaii-primary);
}
.oaii-search-news-excerpt {
    font-size: 14px;
    color: var(--oaii-text-light);
    line-height: 1.6;
    margin: 0 0 10px;
    overflow-wrap: break-word;
}
.oaii-search-news-more {
    font-size: 14px;
    font-weight: 500;
    color: var(--oaii-primary);
    text-decoration: none;
    transition: opacity .15s;
}
.oaii-search-news-more:hover {
    opacity: .7;
}
@media (max-width: 768px) {
    .oaii-search-news-item {
        gap: 14px;
    }
    .oaii-search-news-thumb {
        width: 120px;
        height: 80px;
    }
    .oaii-search-news-title { font-size: 15px; }
    .oaii-search-news-excerpt { font-size: 13px; -webkit-line-clamp: 2; display: -webkit-box; -webkit-box-orient: vertical; overflow: hidden; }
}
@media (max-width: 480px) {
    .oaii-search-news-thumb {
        width: 90px;
        height: 60px;
    }
    .oaii-search-news-excerpt { display: none; }
}

/* ============================================================
   文章卡片（用于 index.php / search.php / archive.php）
============================================================ */
.oaii-post-card {
    background: var(--oaii-bg);
    border-radius: var(--oaii-radius);
    overflow: hidden;
    box-shadow: var(--oaii-shadow);
    transition: transform .2s, box-shadow .2s;
    display: flex;
    flex-direction: column;
}
.oaii-post-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0,0,0,0.1);
}
.oaii-post-thumb {
    display: block;
    width: 100%;
    overflow: hidden;
    aspect-ratio: 400 / 260;
}
.oaii-post-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s;
}
.oaii-post-card:hover .oaii-post-thumb img {
    transform: scale(1.05);
}
.oaii-post-body {
    padding: 20px 24px;
    flex: 1;
    display: flex;
    flex-direction: column;
}
.oaii-post-type {
    display: inline-block;
    align-self: flex-start;
    font-size: 11px;
    color: var(--oaii-primary);
    background: rgba(16, 58, 151, 0.08);
    padding: 2px 10px;
    border-radius: 4px;
    margin-bottom: 8px;
    font-weight: 500;
}

/* ============================================================
   活动 Badge
============================================================ */
.oaii-badge {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 500;
}
.oaii-badge-tbd       { background: #f1f5f9; color: #64748b; }
.oaii-badge-past      { background: #f1f5f9; color: #94a3b8; }
.oaii-badge-soon      { background: #dbeafe; color: #1d4ed8; }
.oaii-badge-upcoming  { background: #e0e7ff; color: #3730a3; }

/* ============================================================
   用户中心页面适配
============================================================ */
.oaii-user-center-page .bmuc-wrap {
    max-width: 1100px;
    margin: 0 auto;
}
/* 确保 bmuc 样式与主题不冲突 */
.oaii-user-center-page .bmuc-btn-primary,
.oaii-user-center-page .bmuc-btn-sm-primary {
    background: var(--oaii-primary);
}
.oaii-user-center-page .bmuc-btn-primary:hover,
.oaii-user-center-page .bmuc-btn-sm-primary:hover {
    background: var(--oaii-primary-dark);
}
.oaii-user-center-page .bmuc-tab.active,
.oaii-user-center-page .bmuc-tab:hover {
    color: var(--oaii-primary);
}
.oaii-user-center-page .bmuc-tab.active {
    border-bottom-color: var(--oaii-primary);
}
.oaii-user-center-page .bmuc-tab.active .bmuc-tab-badge {
    background: rgba(16, 58, 151, 0.1);
    color: var(--oaii-primary);
}
.oaii-user-center-page .bmuc-level-bar-fill {
    background: linear-gradient(90deg, var(--oaii-primary), var(--oaii-primary-light));
}
.oaii-user-center-page .bmuc-stat-mini .bmuc-stat-num {
    color: var(--oaii-primary);
}
.oaii-user-center-page .bmuc-avatar-edit {
    background: var(--oaii-primary);
}
.oaii-user-center-page .bmuc-avatar-edit:hover {
    background: var(--oaii-primary-dark);
}
.oaii-user-center-page .bmuc-event-register-btn {
    background: var(--oaii-primary);
}
.oaii-user-center-page .bmuc-event-register-btn:hover {
    background: var(--oaii-primary-dark);
}
.oaii-user-center-page .bmuc-form-field input:focus {
    border-color: var(--oaii-primary-light);
}
.oaii-user-center-page .bmuc-level-badge.level-1 { background: rgba(16,58,151,0.08); color: var(--oaii-primary); }

/* ============================================================
   响应式 - 文章详情页
============================================================ */
@media (max-width: 768px) {
    .oaii-article-title { font-size: 22px; }
    .oaii-article-content { font-size: 15px; }
    .oaii-article-content h2 { font-size: 20px; }
    .oaii-article-content h3 { font-size: 17px; }
    .oaii-article-meta { gap: 12px; font-size: 12px; }
    .oaii-post-nav { flex-direction: column; }
    .oaii-post-nav-next { text-align: left; }
    .oaii-share-bar { gap: 6px; }
    .oaii-share-btn { width: 32px; height: 32px; }
    .oaii-search-page form { flex-direction: column; }

    /* 侧边栏移动端退化 */
    .oaii-single-layout {
        flex-direction: column;
    }
    .oaii-single-sidebar {
        width: 100%;
    }
}

/* ============================================================
   AI 整机柜项目群详情页样式
   对应模板：page-project-ai-cabinet.php
============================================================ */

/* 页面头部面包屑 */
.oaii-breadcrumb {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-size: 13px;
    color: rgba(255,255,255,.75);
    margin-bottom: 16px;
    flex-wrap: wrap;
}
.oaii-breadcrumb a {
    color: rgba(255,255,255,.85);
    text-decoration: none;
    transition: color .2s;
}
.oaii-breadcrumb a:hover { color: #fff; text-decoration: underline; }
.oaii-breadcrumb-sep { opacity: .6; }
.oaii-breadcrumb-current { color: #fff; font-weight: 500; }

/* 项目负责人 */
.oaii-project-leaders { padding-top: 64px; }
.oaii-leaders-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 20px;
    max-width: 1200px;
    margin: 0 auto;
}
.oaii-leader-card {
    display: flex;
    align-items: center;
    gap: 20px;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 16px;
    padding: 28px;
    box-shadow: 0 2px 12px rgba(0,0,0,.04);
    transition: transform .2s, box-shadow .2s;
}
.oaii-leader-card:hover {
    transform: translateY(-3px);
    box-shadow: var(--oaii-shadow);
}
.oaii-leader-primary {
    border-color: rgba(16,58,151,.15);
    background: linear-gradient(135deg, #fff 0%, #f0f5ff 100%);
}
.oaii-leader-avatar {
    width: 72px; height: 72px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--oaii-primary) 0%, #0a2766 100%);
    color: #fff;
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
}
.oaii-leader-info h3 {
    font-size: 22px; font-weight: 700;
    color: var(--oaii-text);
    margin-bottom: 4px;
}
.oaii-leader-info p {
    font-size: 14px; color: var(--oaii-text-light);
    margin: 0;
}
.oaii-leader-role {
    display: inline-block;
    font-size: 12px; font-weight: 600;
    color: var(--oaii-primary);
    background: rgba(16,58,151,.08);
    padding: 4px 10px;
    border-radius: 20px;
    margin-bottom: 8px;
}

/* 项目组委员 */
.oaii-project-members { padding-top: 0; }
.oaii-members-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 16px;
}
.oaii-member-card {
    display: flex;
    align-items: center;
    gap: 14px;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 12px;
    padding: 18px 20px;
    transition: border-color .2s, box-shadow .2s;
}
.oaii-member-card:hover {
    border-color: rgba(16,58,151,.2);
    box-shadow: 0 4px 16px rgba(0,0,0,.06);
}
.oaii-member-avatar {
    width: 44px; height: 44px;
    border-radius: 50%;
    background: linear-gradient(135deg, #e2e8f0 0%, #cbd5e1 100%);
    color: var(--oaii-text-light);
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
}
.oaii-member-info h4 {
    font-size: 15px; font-weight: 600;
    color: var(--oaii-text);
    margin-bottom: 2px;
}
.oaii-member-info p {
    font-size: 12px; color: var(--oaii-text-light);
    margin: 0;
}

/* 项目组 */
.oaii-project-subgroups {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 16px;
    margin-top: 24px;
}
.oaii-subgroup-card {
    display: flex;
    align-items: center;
    gap: 14px;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 12px;
    padding: 18px 22px;
    transition: transform .2s, box-shadow .2s;
}
.oaii-subgroup-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(0,0,0,.06);
}
.oaii-subgroup-icon {
    width: 40px; height: 40px;
    border-radius: 10px;
    background: linear-gradient(135deg, rgba(16,58,151,.08) 0%, rgba(16,58,151,.08) 100%);
    color: var(--oaii-primary);
    display: flex; align-items: center; justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
}
.oaii-subgroup-name {
    font-size: 15px; font-weight: 600;
    color: var(--oaii-text);
}
.oaii-subgroup-desc {
    font-size: 12px; color: var(--oaii-text-light);
    margin-top: 2px;
}

/* 项目简介（单列） */
.oaii-intro-grid-single {
    max-width: 900px;
    margin: 0 auto;
}
.oaii-intro-grid-single .oaii-intro-text {
    font-size: 16px;
    line-height: 1.85;
    color: var(--oaii-text);
}
.oaii-intro-grid-single .oaii-intro-text p {
    margin-bottom: 16px;
}

/* 应用范围 + 开展工作 */
.oaii-scope-work-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
}
.oaii-scope-block,
.oaii-work-block {
    background: #fff;
    border-radius: 16px;
    padding: 36px;
    border: 1px solid var(--oaii-border);
    box-shadow: 0 2px 12px rgba(0,0,0,.04);
}
.oaii-scope-block p,
.oaii-work-block p {
    font-size: 15px; line-height: 1.8;
    color: var(--oaii-text-light);
    margin-bottom: 20px;
}
.oaii-scope-tags {
    display: flex; flex-wrap: wrap; gap: 10px;
}
.oaii-tag {
    display: inline-flex; align-items: center;
    padding: 6px 14px;
    background: rgba(16,58,151,.06);
    color: var(--oaii-primary);
    border-radius: 20px;
    font-size: 13px; font-weight: 500;
}
.oaii-work-items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}
.oaii-work-item {
    display: flex; align-items: center; gap: 12px;
    padding: 14px 16px;
    background: #f8fafc;
    border-radius: 10px;
    font-size: 14px; font-weight: 500;
    color: var(--oaii-text);
    border: 1px solid var(--oaii-border);
}
.oaii-work-icon {
    width: 32px; height: 32px;
    display: flex; align-items: center; justify-content: center;
    font-size: 18px;
}

/* 技术规范文档 */
.oaii-project-docs .oaii-docs-table td:last-child,
.oaii-project-docs .oaii-docs-table th:last-child { text-align: right; }
.oaii-badge {
    display: inline-flex; align-items: center;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px; font-weight: 600;
}
.oaii-badge-blue {
    background: rgba(16,58,151,.08);
    color: var(--oaii-primary);
}
.oaii-badge-soon {
    background: #fef3c7;
    color: #92400e;
}

/* 活动日历包装 */
.oaii-events-calendar-wrapper {
    background: #fff;
    border-radius: 16px;
    padding: 32px;
    border: 1px solid var(--oaii-border);
    box-shadow: 0 2px 12px rgba(0,0,0,.04);
}
.oaii-calendar-placeholder {
    text-align: center;
    padding: 48px 24px;
    color: var(--oaii-text-light);
}
.oaii-calendar-placeholder p { margin-bottom: 20px; }

/* ========== 项目页 — 活动日历区块适配 ========== */
.oaii-project-events .oaii-events-calendar-wrapper {
    padding: 0;
    background: transparent;
    box-shadow: none;
    border-radius: 0;
    border: none;
}
.oaii-project-events .oaii-events-calendar-list-wrapper {
    margin: 0;
}
.oaii-project-events .oaii-events-calendar-left {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(0,0,0,0.08);
    padding: 1.25em;
    border: 1px solid #e8ecf4;
}
.oaii-project-events .oaii-cal-day {
    min-height: 52px;
}
.oaii-project-events .oaii-events-list-container .oaii-event-item {
    border: 1px solid #e2e8f0;
}
.oaii-project-events .oaii-events-list-container .oaii-event-item:hover {
    border-color: #005fcd;
}

/* CTA 区域 */
.oaii-project-cta { padding: 40px 0 80px; }
.oaii-cta-box {
    background: linear-gradient(135deg, var(--oaii-primary) 0%, #0a2766 100%);
    color: #fff;
    border-radius: 20px;
    padding: 48px 56px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
    flex-wrap: wrap;
}
.oaii-cta-box h2 {
    font-size: 28px; font-weight: 800;
    margin-bottom: 10px;
    color: #fff;
}
.oaii-cta-box p {
    font-size: 15px; opacity: .88;
    margin: 0; max-width: 520px;
    line-height: 1.7;
}
.oaii-cta-actions {
    display: flex; gap: 14px;
    flex-wrap: wrap;
    flex-shrink: 0;
}
.oaii-cta-actions .oaii-btn-outline {
    border-color: rgba(255,255,255,.6);
    color: #fff;
}
.oaii-cta-actions .oaii-btn-outline:hover {
    background: rgba(255,255,255,.15);
    border-color: #fff;
}

/* 编辑器内容区 */
.oaii-page-editor-content { padding-top: 0; }
.oaii-editor-content {
    background: #fff;
    border-radius: 16px;
    padding: 40px;
    border: 1px solid var(--oaii-border);
    box-shadow: 0 2px 12px rgba(0,0,0,.04);
}
.oaii-editor-content > *:first-child { margin-top: 0; }

/* ========== 项目集合页（一级页面） ========== */

/* 页面头部面包屑已在 AI 整机柜页面区定义 */

/* 介绍区 */
.oaii-projects-intro {
    padding-top: 64px;
    padding-bottom: 24px;
}
.oaii-projects-intro-inner {
    max-width: 880px;
    margin: 0 auto;
    text-align: center;
}
.oaii-projects-intro .oaii-section-title {
    font-size: 28px;
    font-weight: 700;
    color: var(--oaii-text);
    margin-bottom: 24px;
    line-height: 1.4;
}
.oaii-intro-text {
    font-size: 16px;
    color: var(--oaii-text-light);
    line-height: 1.8;
}

/* 项目群网格 */
.oaii-projects-groups {
    padding-top: 24px;
    padding-bottom: 64px;
}
.oaii-project-groups-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

/* 项目群卡片 */
.oaii-project-group-card {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 28px;
    display: flex;
    flex-direction: column;
    transition: box-shadow .2s, transform .2s, border-color .2s;
    position: relative;
    overflow: hidden;
}
.oaii-project-group-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--oaii-primary), var(--oaii-primary-light));
    opacity: 0;
    transition: opacity .2s;
}
.oaii-project-group-card:hover {
    box-shadow: 0 8px 28px rgba(16, 58, 151, .10), 0 2px 8px rgba(0, 0, 0, .06);
    transform: translateY(-3px);
    border-color: rgba(16, 58, 151, .25);
}
.oaii-project-group-card:hover::before { opacity: 1; }

.oaii-project-group-main { flex: 1; }

.oaii-project-group-title {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 20px;
    font-weight: 700;
    color: var(--oaii-primary);
    margin-bottom: 14px;
    transition: color .2s;
}
.oaii-project-group-title:hover { color: var(--oaii-primary-light); }
.oaii-project-group-arrow {
    transition: transform .2s;
    flex-shrink: 0;
}
.oaii-project-group-card:hover .oaii-project-group-arrow { transform: translateX(4px); }

.oaii-project-group-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 14px;
}
.oaii-project-group-tag {
    display: inline-block;
    padding: 4px 10px;
    background: rgba(16, 58, 151, .06);
    border-radius: 20px;
    font-size: 12px;
    color: var(--oaii-primary);
    font-weight: 500;
}

.oaii-project-group-desc {
    font-size: 14px;
    color: var(--oaii-text-light);
    line-height: 1.7;
    margin-bottom: 20px;
}

/* 子项目组 */
.oaii-project-group-sub {
    margin-top: auto;
    padding-top: 18px;
    border-top: 1px dashed var(--oaii-border);
}
.oaii-project-group-sub-label {
    font-size: 12px;
    font-weight: 600;
    color: var(--oaii-text-light);
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: .5px;
}
.oaii-project-group-sub-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.oaii-project-group-sub-item {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: var(--oaii-text);
    background: var(--oaii-bg-alt);
    padding: 6px 12px;
    border-radius: 6px;
}
.oaii-project-group-sub-item::before {
    content: '';
    width: 6px; height: 6px;
    border-radius: 50%;
    background: var(--oaii-primary-light);
    flex-shrink: 0;
}

/* CTA */
.oaii-cta-section { padding: 64px 0 80px; }
.oaii-cta-box {
    background: linear-gradient(135deg, var(--oaii-primary) 0%, #0a2766 100%);
    color: #fff;
    border-radius: var(--oaii-radius);
    padding: 48px 64px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
}
.oaii-cta-content h2 {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 8px;
}
.oaii-cta-content p { opacity: .85; font-size: 14px; }
.oaii-cta-actions { display: flex; gap: 12px; flex-shrink: 0; }
.oaii-cta-actions .oaii-btn-primary {
    background: #fff;
    color: var(--oaii-primary);
    border-color: #fff;
}
.oaii-cta-actions .oaii-btn-primary:hover { background: rgba(255,255,255,.9); color: var(--oaii-primary); }
.oaii-cta-actions .oaii-btn-outline {
    border-color: rgba(255,255,255,.5);
    color: #fff;
}
.oaii-cta-actions .oaii-btn-outline:hover { background: rgba(255,255,255,.12); border-color: #fff; }

/* 响应式 */
@media (max-width: 1024px) {
    .oaii-project-groups-grid { grid-template-columns: repeat(2, 1fr); }
    .oaii-section-header { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 768px) {
    .oaii-projects-intro .oaii-section-title { font-size: 22px; }
    .oaii-project-groups-grid { grid-template-columns: 1fr; }
    .oaii-project-group-card { padding: 22px; }
    .oaii-project-group-title { font-size: 18px; }
    .oaii-cta-box { padding: 32px; text-align: center; justify-content: center; flex-direction: column; }
    .oaii-cta-actions { width: 100%; justify-content: center; flex-wrap: wrap; }
}

/* ============================================================
   首页新增板块样式（参考原型）
   1. 公告条
   2. 架构图 (arch-map-v2)
   3. 架构总结 (arch-summary)
   4. 规范文档卡片 (spec-grid)
   5. 合作伙伴滚动
   6. CTA 双栏
   7. 架构图弹窗
   8. 滚动渐入动画
   ============================================================ */

/* ---------- 1. 公告条 ---------- */
.oaii-announcement-bar {
    background: linear-gradient(90deg, var(--oaii-primary) 0%, var(--oaii-primary-light) 100%);
    color: #fff;
    padding: 10px 0;
    font-size: 14px;
    position: relative;
    z-index: 100;
}
.oaii-announcement-bar .oaii-container {
    display: flex;
    align-items: center;
    gap: 12px;
}
.oaii-announcement-icon {
    font-size: 16px;
    flex-shrink: 0;
}
.oaii-announcement-content {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    position: relative;
}
.oaii-announcement-text {
    display: inline-block;
    white-space: nowrap;
    animation: oaiiAnnScroll 20s linear infinite;
}
@keyframes oaiiAnnScroll {
    0% { transform: translateX(100%); }
    100% { transform: translateX(-100%); }
}
.oaii-announcement-link {
    color: #fff;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
    flex-shrink: 0;
    transition: opacity .2s;
}
.oaii-announcement-link:hover { opacity: .85; }
.oaii-announcement-close {
    background: none;
    border: none;
    color: #fff;
    font-size: 20px;
    cursor: pointer;
    flex-shrink: 0;
    opacity: .7;
    transition: opacity .2s;
    padding: 4px 8px;
}
.oaii-announcement-close:hover { opacity: 1; }
.oaii-announcement-bar.hidden { display: none; }

/* ---------- 2. 架构图 ---------- */
.oaii-arch-section { background: var(--oaii-bg); }
.oaii-section-desc {
    font-size: 14px;
    color: var(--oaii-text-light);
    margin-top: 4px;
}

.oaii-arch-map-v2 {
    max-width: 1100px;
    margin: 0 auto;
}

/* 战略规划 */
.oaii-arch-strategic {
    background: linear-gradient(135deg, #0a2766 0%, #005fcd 50%, #0a2766 100%);
    border-radius: 16px;
    padding: 32px;
    color: #fff;
    margin-bottom: 24px;
}
.oaii-arch-strategic-header {
    margin-bottom: 24px;
}
.oaii-arch-strategic-header h3 {
    font-size: 20px;
    font-weight: 700;
    margin: 0;
}
.oaii-arch-strategic-header h3 span {
    font-size: 14px;
    color: rgba(255,255,255,.6);
    font-weight: 400;
}
.oaii-arch-strategic-body {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}

/* 两列 */
.oaii-arch-strategic-col {
    position: relative;
}
.oaii-arch-strategic-col.up {
    background: rgba(16, 58, 151, 0.3);
    border-radius: 12px;
    padding: 20px;
}
.oaii-arch-strategic-col.down {
    background: rgba(16, 58, 151, 0.15);
    border-radius: 12px;
    padding: 20px;
}
.oaii-arch-strategic-col-title {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
}
.oaii-col-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #005fcd;
    flex-shrink: 0;
}
.oaii-arch-strategic-col.down .oaii-col-dot {
    background: #005fcd;
}
.oaii-arch-strategic-col-title h4 {
    font-size: 16px;
    font-weight: 600;
    margin: 0;
}

.oaii-arch-strategic-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}
.oaii-arch-strategic-card {
    display: block;
    padding: 8px 10px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 500;
    color: #fff;
    text-decoration: none;
    text-align: center;
    transition: background .2s, transform .15s;
    cursor: default;
    background: rgba(255,255,255,.08);
}
.oaii-arch-strategic-card.has-link {
    background: rgba(0, 180, 216, .2);
    border: 1px solid rgba(0, 180, 216, .4);
    cursor: pointer;
}
.oaii-arch-strategic-card.has-link:hover {
    background: rgba(0, 180, 216, .35);
    transform: translateY(-1px);
}
.oaii-arch-strategic-card.coming-soon {
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.1);
    color: rgba(255,255,255,.5);
    cursor: pointer;
    opacity: .7;
}
.oaii-arch-strategic-card.coming-soon:hover {
    opacity: 1;
    background: rgba(255,255,255,.1);
}

/* 底部行 */
.oaii-arch-bottom-row {
    display: grid;
    grid-template-columns: 1.6fr 1fr;
    gap: 24px;
}

/* 技术栈列 */
.oaii-arch-techstack-col {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.oaii-arch-techstack-block {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 12px;
    padding: 24px;
    transition: box-shadow .2s;
}
.oaii-arch-techstack-block:hover {
    box-shadow: 0 4px 16px rgba(0,0,0,.08);
}
.oaii-arch-techstack-block-title {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
}
.oaii-arch-techstack-block-icon {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}
.oaii-arch-techstack-block-title h4 {
    font-size: 16px;
    font-weight: 700;
    color: var(--oaii-text);
    margin: 0;
}
.oaii-arch-techstack-block-desc {
    font-size: 13px;
    color: var(--oaii-text-light);
    line-height: 1.5;
    margin-bottom: 16px;
}
.oaii-arch-techstack-sub {
    margin-bottom: 12px;
}
.oaii-arch-techstack-sub:last-child { margin-bottom: 0; }
.oaii-arch-techstack-sub-title {
    font-size: 12px;
    font-weight: 600;
    color: var(--oaii-primary);
    margin-bottom: 8px;
}
.oaii-arch-techstack-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.oaii-arch-techstack-tag {
    display: inline-block;
    padding: 4px 12px;
    background: rgba(16, 58, 151, .06);
    color: var(--oaii-primary);
    border-radius: 20px;
    font-size: 12px;
    font-weight: 500;
    text-decoration: none;
    transition: background .15s, color .15s;
    cursor: pointer;
}
.oaii-arch-techstack-tag:hover {
    background: rgba(16, 58, 151, .12);
    color: var(--oaii-primary-dark);
}

/* Benchmark 列 */
.oaii-arch-benchmark-col {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 12px;
    padding: 24px;
    transition: box-shadow .2s;
}
.oaii-arch-benchmark-col:hover {
    box-shadow: 0 4px 16px rgba(0,0,0,.08);
}
.oaii-arch-benchmark-col-title {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 20px;
}
.oaii-arch-benchmark-col-title h4 {
    font-size: 16px;
    font-weight: 700;
    color: var(--oaii-text);
    margin: 0;
}
.oaii-arch-benchmark-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.oaii-arch-benchmark-card {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    background: var(--oaii-bg-alt);
    border-radius: 10px;
    text-decoration: none;
    color: var(--oaii-text);
    transition: all .2s;
    cursor: pointer;
    border: 1px solid transparent;
}
.oaii-arch-benchmark-card:hover {
    border-color: var(--oaii-primary);
    transform: translateX(4px);
}
.oaii-arch-benchmark-card.coming-soon {
    opacity: .6;
    cursor: pointer;
}
.oaii-arch-benchmark-card.coming-soon:hover {
    opacity: 1;
}
.oaii-bm-icon {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    flex-shrink: 0;
}
.oaii-bm-name {
    font-size: 14px;
    font-weight: 600;
    flex: 1;
}
.oaii-bm-arrow {
    font-size: 14px;
    color: var(--oaii-text-light);
    transition: transform .2s;
}
.oaii-arch-benchmark-card:hover .oaii-bm-arrow {
    transform: translateX(4px);
    color: var(--oaii-primary);
}

/* ---------- 3. 架构总结 ---------- */
.oaii-arch-summary {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 48px;
    background: linear-gradient(135deg, #0a2766 0%, #005fcd 100%);
    border-radius: 16px;
    padding: 40px;
    color: #fff;
    margin-top: 24px;
    align-items: center;
}
.oaii-arch-summary-icon {
    font-size: 32px;
    margin-bottom: 12px;
}
.oaii-arch-summary-left h3 {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 12px;
}
.oaii-arch-summary-left p {
    font-size: 14px;
    line-height: 1.7;
    opacity: .85;
    margin-bottom: 12px;
}
.oaii-arch-summary-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 16px;
}
.oaii-arch-summary-tags span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 6px 14px;
    background: rgba(255,255,255,.1);
    border-radius: 20px;
    font-size: 13px;
    font-weight: 500;
}
.oaii-arch-summary-right {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}
.oaii-arch-summary-stat {
    text-align: center;
}
.oaii-arch-summary-stat-num {
    display: block;
    font-size: 36px;
    font-weight: 800;
    line-height: 1;
    margin-bottom: 6px;
}
.oaii-arch-summary-stat-label {
    font-size: 13px;
    opacity: .7;
}

/* ---------- 4. 规范文档卡片 (spec-grid) ---------- */
.oaii-spec-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}
.oaii-spec-card {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-left: 4px solid var(--oaii-spec-accent, var(--oaii-primary));
    border-radius: 0 12px 12px 0;
    padding: 24px;
    display: flex;
    flex-direction: column;
    transition: box-shadow .25s, transform .15s;
}
.oaii-spec-card:hover {
    box-shadow: 0 8px 30px rgba(0,0,0,.08);
    transform: translateY(-2px);
}
.oaii-spec-card-category {
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 8px;
}
.oaii-spec-card-name {
    font-size: 17px;
    font-weight: 700;
    color: var(--oaii-text);
    margin-bottom: 8px;
    line-height: 1.4;
}
.oaii-spec-card-desc {
    font-size: 13px;
    color: var(--oaii-text-light);
    line-height: 1.6;
    margin-bottom: 16px;
}
.oaii-spec-card-meta {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    font-size: 12px;
    color: var(--oaii-text-light);
    margin-bottom: 16px;
}
.oaii-spec-tag {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 4px;
    font-weight: 600;
    font-size: 12px;
}
.oaii-spec-card-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: auto;
}
.oaii-spec-status {
    font-size: 13px;
    font-weight: 500;
    color: var(--oaii-text-light);
}

/* ---------- 5. 合作伙伴滚动 ---------- */
.oaii-partner-section { background: var(--oaii-bg-alt); }
.oaii-partner-rows {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.oaii-partner-scroll-wrap {
    overflow: hidden;
    padding: 24px 0;
}
.oaii-partner-scroll-track {
    display: flex;
    width: max-content;
    animation: oaiiPartnerScroll 266s linear infinite;
}
.oaii-partner-scroll-track:hover {
    animation-play-state: paused;
}
.oaii-partner-scroll-group {
    display: flex;
    gap: 24px;
    flex-shrink: 0;
    padding-right: 24px;
}
.oaii-partner-logo-item {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 56px;
    min-width: 140px;
    padding: 6px 16px;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 8px;
    transition: border-color .2s, box-shadow .2s;
}
.oaii-partner-logo-item:hover {
    border-color: var(--oaii-primary);
    box-shadow: 0 2px 8px rgba(0,0,0,.06);
}
.oaii-partner-logo-item img {
    max-height: 44px;
    max-width: 120px;
    width: auto;
    height: auto;
    object-fit: contain;
}
@keyframes oaiiPartnerScroll {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

/* ---------- 6. CTA 双栏 ---------- */
.oaii-cta-split-section { padding: 64px 0; }
.oaii-cta-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}
.oaii-cta-split-card {
    border-radius: 16px;
    padding: 48px 40px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: transform .2s;
}
.oaii-cta-split-card:hover { transform: translateY(-4px); }
.oaii-cta-split-card.join {
    background: linear-gradient(135deg, var(--oaii-primary) 0%, var(--oaii-primary-light) 100%);
    color: #fff;
}
.oaii-cta-split-card.contribute {
    background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
    color: #fff;
}
.oaii-cta-icon {
    font-size: 40px;
    margin-bottom: 16px;
}
.oaii-cta-split-card h3 {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 12px;
}
.oaii-cta-split-card p {
    font-size: 14px;
    opacity: .85;
    line-height: 1.7;
    margin-bottom: 24px;
    max-width: 400px;
}
.oaii-cta-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    justify-content: center;
}
.oaii-btn-lg {
    padding: 12px 28px;
    font-size: 15px;
    font-weight: 600;
}
.oaii-btn-outline-light {
    background: transparent;
    border: 1px solid rgba(255,255,255,.5);
    color: #fff;
    border-radius: 8px;
    text-decoration: none;
    transition: all .2s;
}
.oaii-btn-outline-light:hover {
    background: rgba(255,255,255,.15);
    border-color: #fff;
}

/* ---------- 7. 架构图信息弹窗 ---------- */
.oaii-arch-info-modal {
    display: none;
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,.5);
    z-index: 9999;
    align-items: center;
    justify-content: center;
}
.oaii-arch-info-modal.active {
    display: flex;
}
.oaii-arch-info-modal-content {
    background: #fff;
    border-radius: 16px;
    padding: 40px;
    max-width: 480px;
    width: 90%;
    text-align: center;
    position: relative;
}
.oaii-arch-info-modal-close {
    position: absolute;
    top: 16px;
    right: 16px;
    background: none;
    border: none;
    font-size: 24px;
    cursor: pointer;
    color: var(--oaii-text-light);
}
.oaii-arch-info-modal-icon { font-size: 32px; margin-bottom: 12px; }
.oaii-aim-name { font-size: 20px; font-weight: 600; margin-bottom: 8px; }
.oaii-aim-status {
    display: inline-block;
    padding: 4px 14px;
    background: #fef3c7;
    color: #92400e;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 12px;
}
.oaii-aim-desc {
    font-size: 14px;
    color: var(--oaii-text-light);
    line-height: 1.6;
    margin-bottom: 24px;
}

/* ============================================================
 * 首页社区业务架构图 V3（白底+蓝色线条）
 * ============================================================ */

/* ---- 公共容器 ---- */
.oaii-arch-map-v3 {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* ---- 第一块：兆瓦级算力系统与吉瓦级数据中心 ---- */
.oaii-arch-strategic-v3 {
    background: #fff;
    border: 1px solid #005fcd;
    border-radius: 16px;
    padding: 28px 32px 32px;
}

.oaii-arch-strategic-main-title {
    text-align: center;
    margin-bottom: 24px;
}

.oaii-arch-strategic-main-title h3 {
    font-size: 18px;
    font-weight: 700;
    color: #005fcd;
    margin: 0;
}

.oaii-arch-strategic-body-v3 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}

.oaii-arch-strategic-col-v3 {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.oaii-arch-strategic-col-title-v3 {
    text-align: center;
}

.oaii-arch-strategic-col-title-v3 h4 {
    font-size: 15px;
    font-weight: 700;
    color: #005fcd;
    margin: 0;
}

.oaii-arch-strategic-groups {
    display: flex;
    flex-direction: column;
    gap: 16px;
    flex: 1;
}

.oaii-arch-strategic-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.oaii-arch-strategic-group.has-title {
    border: 1px dashed #005fcd;
    border-radius: 10px;
    padding: 12px;
}

.oaii-arch-strategic-group-title {
    display: inline-flex;
    align-self: flex-start;
    padding: 6px 14px;
    background: #005fcd;
    color: #fff;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 600;
}

.oaii-arch-strategic-grid-v3 {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: flex-start;
}

.oaii-arch-strategic-card-v3 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
    text-align: center;
    transition: all .15s;
    cursor: default;
    border: 1px solid transparent;
    min-height: 30px;
}

.oaii-arch-strategic-card-v3.has-link {
    background: #005fcd;
    color: #fff;
    border-color: #005fcd;
    cursor: pointer;
}

.oaii-arch-strategic-card-v3.has-link:hover {
    background: #0a2766;
    border-color: #0a2766;
    transform: translateY(-1px);
}

.oaii-arch-strategic-card-v3.coming-soon {
    background: #f8fafc;
    color: #64748b;
    border-color: #e2e8f0;
    cursor: pointer;
}

.oaii-arch-strategic-card-v3.coming-soon:hover {
    background: #f1f5f9;
    border-color: #cbd5e1;
}

.oaii-arch-strategic-card-v3.is-text {
    background: transparent;
    color: #64748b;
    padding-left: 0;
    padding-right: 0;
    justify-content: flex-start;
    font-weight: 500;
    cursor: default;
}

/* 特殊颜色（主蓝色/深灰按钮） */
.oaii-arch-strategic-card-v3.is-orange {
    background: #005fcd;
    color: #fff;
    border-color: #005fcd;
}

.oaii-arch-strategic-card-v3.is-dark {
    background: #334155;
    color: #fff;
    border-color: #334155;
}

/* ---- 第二块：社区技术栈逻辑图 + Benchmark ---- */
.oaii-arch-techstack-v3 {
    display: grid;
    grid-template-columns: 1fr 220px;
    gap: 20px;
    background: #fff;
    border: 1px solid #005fcd;
    border-radius: 16px;
    padding: 24px 28px 28px;
}

.oaii-arch-techstack-main-v3 {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
}

.oaii-arch-techstack-main-title h3 {
    font-size: 18px;
    font-weight: 700;
    color: #005fcd;
    margin: 0;
}

.oaii-arch-techstack-table {
    display: flex;
    flex-direction: column;
    border: 1px solid #dbeafe;
    border-radius: 12px;
    overflow: hidden;
}

.oaii-arch-techstack-row {
    display: grid;
    grid-template-columns: 110px 1fr;
    gap: 0;
    border-bottom: 1px solid #dbeafe;
}

.oaii-arch-techstack-row:last-child {
    border-bottom: none;
}

.oaii-arch-techstack-level {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 4px;
    padding: 16px 12px;
    background: #f8fbff;
    border-right: 1px solid #dbeafe;
}

.oaii-arch-techstack-level-tag {
    font-size: 13px;
    font-weight: 700;
    color: #005fcd;
}

.oaii-arch-techstack-level-name {
    font-size: 12px;
    font-weight: 600;
    color: #005fcd;
    text-align: center;
    line-height: 1.4;
}

.oaii-arch-techstack-cells {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 14px 16px;
    justify-content: center;
}

.oaii-arch-techstack-sub-row {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.oaii-arch-techstack-sub-title {
    display: inline-flex;
    align-self: flex-start;
    padding: 4px 12px;
    background: #dbeafe;
    color: #005fcd;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
}

.oaii-arch-techstack-tags-v3 {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.oaii-arch-techstack-tag-v3 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 5px 14px;
    background: #005fcd;
    color: #fff;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
    transition: all .15s;
    border: 1px solid #005fcd;
}

.oaii-arch-techstack-tag-v3:hover {
    background: #0a2766;
    border-color: #0a2766;
    transform: translateY(-1px);
}

.oaii-arch-techstack-tag-v3.coming-soon {
    background: #f8fafc;
    color: #64748b;
    border-color: #e2e8f0;
    cursor: pointer;
}

.oaii-arch-techstack-tag-v3.coming-soon:hover {
    background: #f1f5f9;
    border-color: #cbd5e1;
}

/* ---- Benchmark 列 V3 ---- */
.oaii-arch-benchmark-col-v3 {
    display: flex;
    flex-direction: column;
    gap: 14px;
    min-width: 0;
}

.oaii-arch-benchmark-col-title-v3 {
    text-align: center;
}

.oaii-arch-benchmark-col-title-v3 h4 {
    font-size: 14px;
    font-weight: 700;
    color: #005fcd;
    margin: 0;
}

.oaii-arch-benchmark-list-v3 {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.oaii-arch-benchmark-card-v3 {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
    background: #005fcd;
    color: #fff;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
    transition: all .15s;
    border: 1px solid #005fcd;
    cursor: pointer;
}

.oaii-arch-benchmark-card-v3:hover {
    background: #0a2766;
    border-color: #0a2766;
    transform: translateY(-1px);
}

.oaii-arch-benchmark-card-v3.coming-soon {
    background: #f8fafc;
    color: #64748b;
    border-color: #e2e8f0;
}

.oaii-arch-benchmark-card-v3.coming-soon:hover {
    background: #f1f5f9;
    border-color: #cbd5e1;
}

.oaii-bm-name-v3 {
    text-align: center;
}

/* ---- 架构图 V3 响应式 ---- */
@media (max-width: 900px) {
    .oaii-arch-strategic-body-v3 {
        grid-template-columns: 1fr;
    }
    .oaii-arch-techstack-v3 {
        grid-template-columns: 1fr;
    }
    .oaii-arch-techstack-row {
        grid-template-columns: 80px 1fr;
    }
}

@media (max-width: 480px) {
    .oaii-arch-strategic-v3,
    .oaii-arch-techstack-v3 {
        padding: 20px;
    }
    .oaii-arch-strategic-grid-v3 {
        gap: 6px;
    }
    .oaii-arch-strategic-card-v3 {
        padding: 5px 10px;
        font-size: 11px;
    }
    .oaii-arch-techstack-tags-v3 {
        gap: 6px;
    }
    .oaii-arch-techstack-tag-v3 {
        padding: 4px 10px;
        font-size: 11px;
    }
}

/* ---------- 8. 滚动渐入动画 ---------- */
[data-aos] {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity .6s ease, transform .6s ease;
}
[data-aos].aos-animate {
    opacity: 1;
    transform: translateY(0);
}

/* ---------- 新增板块响应式 ---------- */
@media (max-width: 768px) {
    .oaii-announcement-bar .oaii-container { gap: 8px; }
    .oaii-announcement-link { display: none; }
    .oaii-arch-strategic-body { grid-template-columns: 1fr; }
    .oaii-arch-strategic-grid { grid-template-columns: repeat(3, 1fr); }
    .oaii-arch-bottom-row { grid-template-columns: 1fr; }
    .oaii-arch-summary { grid-template-columns: 1fr; gap: 24px; }
    .oaii-arch-summary-right { grid-template-columns: repeat(2, 1fr); }
    .oaii-spec-grid { grid-template-columns: 1fr; }
    .oaii-cta-split { grid-template-columns: 1fr; }
    .oaii-cta-split-card { padding: 32px 24px; }
}
@media (max-width: 480px) {
    .oaii-arch-strategic-grid { grid-template-columns: repeat(2, 1fr); }
    .oaii-arch-summary-stat-num { font-size: 28px; }
    .oaii-cta-actions { flex-direction: column; }
    .oaii-cta-actions .oaii-btn-lg { width: 100%; text-align: center; }
}

/* ============================================================
   项目集合页样式（参考 projects.html 原型）
   1. Page Hero（暗色渐变）
   2. 项目卡片网格
   3. 标签色系
   4. 筛选栏 + 表格
   5. CTA Banner
   ============================================================ */

/* ---------- 1. Page Hero ---------- */
.oaii-page-hero {
    background: var(--oaii-hero-bg);
    min-height: 350px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 60px 0;
    position: relative;
    overflow: hidden;
    color: #fff;
    margin-top: var(--oaii-header-h);
}
.oaii-page-hero::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background:
        radial-gradient(ellipse at 30% 80%, rgba(255,255,255,0.06) 0%, transparent 50%),
        radial-gradient(ellipse at 70% 20%, rgba(255,255,255,0.04) 0%, transparent 50%);
}
.oaii-page-hero .oaii-container {
    position: relative;
    z-index: 1;
}
.oaii-page-hero-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    color: rgba(255,255,255,.6);
    margin-bottom: 16px;
}
.oaii-page-hero-breadcrumb a {
    color: rgba(255,255,255,.75);
    text-decoration: none;
    transition: color .2s;
}
.oaii-page-hero-breadcrumb a:hover {
    color: #fff;
}
.oaii-page-hero h1 {
    font-size: 40px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 12px;
}
.oaii-page-hero p,
.oaii-page-hero-subtitle {
    font-size: 18px;
    color: rgba(255,255,255,.85);
    max-width: 600px;
}
.oaii-page-hero h1,
.oaii-page-hero-title {
    font-size: 40px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 12px;
}

/* ---------- 全站 Hero 左下角面包屑 ---------- */
.oaii-hero-breadcrumb {
    position: absolute;
    bottom: 18px;
    left: 0;
    right: 0;
    z-index: 3;
}
.oaii-hero-breadcrumb .oaii-container {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: rgba(255,255,255,.5);
    flex-wrap: wrap;
}
.oaii-hero-breadcrumb a {
    color: rgba(255,255,255,.75);
    text-decoration: none;
    transition: color .2s;
}
.oaii-hero-breadcrumb a:hover { color: #fff; }
.oaii-hero-bc-sep { color: rgba(255,255,255,.35); }
.oaii-hero-bc-current { color: rgba(255,255,255,.8); font-weight: 500; }

/* 项目详情页：独立面包屑导航栏（Hero 下方） */
.oaii-breadcrumb-bar {
    background: #f5f7fa;
    border-bottom: 1px solid var(--oaii-border, #e8ecf0);
    padding: 12px 0;
}
.oaii-breadcrumb-bar .oaii-container {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: #8895a7;
    flex-wrap: wrap;
}
.oaii-breadcrumb-bar a {
    color: #005fcd;
    text-decoration: none;
    transition: color .2s;
}
.oaii-breadcrumb-bar a:hover {
    color: #0a2766;
}
.oaii-breadcrumb-bar .oaii-bc-sep {
    color: #c0c8d4;
}
.oaii-breadcrumb-bar .oaii-bc-current {
    color: #1a2332;
    font-weight: 600;
}
@media (max-width: 768px) {
    .oaii-breadcrumb-bar {
        padding: 10px 0;
    }
    .oaii-breadcrumb-bar .oaii-container {
        font-size: 12px;
    }
}

/* 项目详情页：栏目标题（面包屑下方） */
.oaii-project-page-title {
    padding: 24px 0 8px;
}
.oaii-project-page-title h2 {
    font-size: 28px;
    font-weight: 600;
    color: #1a2332;
    margin: 0;
    line-height: 1.3;
}
.oaii-project-page-title-en {
    display: block;
    font-size: 13px;
    color: #8895a7;
    margin-top: 4px;
    text-transform: uppercase;
    letter-spacing: 1px;
}
@media (max-width: 768px) {
    .oaii-project-page-title {
        padding: 16px 0 4px;
    }
    .oaii-project-page-title h2 {
        font-size: 22px;
    }
}

/* ---------- 2. 项目卡片网格（项目集合主页 v2） ---------- */
.oaii-project-card-grid-v2 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.oaii-project-card-grid-v2 .oaii-project-card-item {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 16px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 2px 12px rgba(0,0,0,.04);
    transition: box-shadow .25s, transform .15s;
}
.oaii-project-card-grid-v2 .oaii-project-card-item:hover {
    box-shadow: 0 8px 30px rgba(0,0,0,.08);
    transform: translateY(-2px);
}
.oaii-project-card-grid-v2 .oaii-project-card-icon {
    width: 56px;
    height: 56px;
    border-radius: 12px;
    background: #f5f8fc;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
    overflow: hidden;
}
.oaii-project-card-grid-v2 .oaii-project-card-icon img {
    width: 36px;
    height: 36px;
    object-fit: contain;
}
.oaii-project-card-grid-v2 .oaii-project-card-item h3 {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 10px;
    color: var(--oaii-text);
}
.oaii-project-card-grid-v2 .oaii-project-card-desc {
    font-size: 14px;
    color: var(--oaii-text-light);
    line-height: 1.7;
    margin-bottom: 16px;
    flex: 1;
}
/* 介绍段落 */
.oaii-overview-intro {
    max-width: 900px;
    margin: 0 auto 40px;
    text-align: center;
}
.oaii-overview-intro p {
    font-size: 15px;
    color: var(--oaii-text-light);
    line-height: 1.9;
}
/* 项目组标签 */
.oaii-project-card-sub-groups {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}
.oaii-sub-group-tag {
    display: inline-block;
    padding: 2px 8px;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.5;
    color: var(--oaii-primary);
    background: rgba(16, 58, 151, 0.08);
    border-radius: 4px;
    white-space: nowrap;
}
.oaii-project-card-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    font-weight: 500;
    color: var(--oaii-primary);
    text-decoration: none;
    align-self: flex-start;
    transition: color .2s;
}
.oaii-project-card-link:hover {
    color: #003399;
}
.oaii-project-card-link span {
    transition: transform .2s;
}
.oaii-project-card-link:hover span {
    transform: translateX(3px);
}
.oaii-project-card-link-disabled {
    color: var(--oaii-text-light);
    cursor: default;
}
.oaii-project-card-link-disabled:hover {
    color: var(--oaii-text-light);
}

/* 项目集合主页 v2 技术规范库 */
.oaii-spec-section-v2 {
    background: #fff;
}
.oaii-spec-section-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 24px;
    gap: 16px;
    flex-wrap: wrap;
}
.oaii-spec-section-header h2 {
    font-size: 28px;
    font-weight: 700;
    color: var(--oaii-text);
    margin: 0;
}
.oaii-spec-filter-bar-v2 {
    display: flex;
    gap: 10px;
    margin-bottom: 24px;
    flex-wrap: wrap;
}
.oaii-spec-filter-bar-v2 .oaii-filter-btn {
    padding: 8px 22px;
    border-radius: 24px;
    font-size: 14px;
    font-weight: 500;
    background: #fff;
    border: 1px solid var(--oaii-border);
    color: var(--oaii-text);
    cursor: pointer;
    transition: all .2s;
    font-family: inherit;
}
.oaii-spec-filter-bar-v2 .oaii-filter-btn:hover {
    border-color: var(--oaii-primary);
    color: var(--oaii-primary);
}
.oaii-spec-filter-bar-v2 .oaii-filter-btn.active {
    background: var(--oaii-primary);
    color: #fff;
    border-color: var(--oaii-primary);
}
.oaii-spec-table-v2 {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 12px;
    overflow: hidden;
}
.oaii-spec-table-v2 thead tr {
    background: #f5f7fa;
    color: var(--oaii-text);
}
.oaii-spec-table-v2 th {
    padding: 14px 20px;
    text-align: left;
    font-size: 14px;
    font-weight: 600;
    border-bottom: 1px solid var(--oaii-border);
}
.oaii-spec-table-v2 td {
    padding: 16px 20px;
    font-size: 14px;
    border-bottom: 1px solid var(--oaii-border);
    color: var(--oaii-text);
}
.oaii-spec-table-v2 tbody tr:last-child td {
    border-bottom: none;
}
.oaii-spec-table-v2 tbody tr {
    transition: background .15s;
}
.oaii-spec-table-v2 tbody tr:hover {
    background: rgba(16, 58, 151, .03);
}
.oaii-spec-download {
    color: var(--oaii-primary);
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
}
.oaii-spec-download:hover {
    text-decoration: underline;
}

/* 技术规范库分页 */
.oaii-spec-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 28px;
}
.oaii-spec-pagination button {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid var(--oaii-border);
    background: #fff;
    color: var(--oaii-text);
    font-size: 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .2s;
}
.oaii-spec-pagination button:hover:not(:disabled) {
    border-color: var(--oaii-primary);
    color: var(--oaii-primary);
}
.oaii-spec-pagination button:disabled {
    opacity: .4;
    cursor: default;
}
.oaii-spec-page-dots {
    display: flex;
    gap: 8px;
}
.oaii-spec-page-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--oaii-border);
    cursor: pointer;
    transition: background .2s;
}
.oaii-spec-page-dot.active {
    background: var(--oaii-primary);
}

@media (max-width: 1024px) {
    .oaii-project-card-grid-v2 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
    .oaii-project-card-grid-v2 { grid-template-columns: 1fr; }
    .oaii-spec-section-header { flex-direction: column; align-items: flex-start; }
    .oaii-spec-filter-bar-v2 { gap: 8px; }
    .oaii-spec-filter-bar-v2 .oaii-filter-btn { padding: 6px 14px; font-size: 13px; }
    .oaii-spec-table-v2 th,
    .oaii-spec-table-v2 td { padding: 10px 12px; font-size: 13px; }
}

/* ---------- 2. 项目卡片网格 ---------- */
.oaii-project-card-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.oaii-project-card-item {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 32px;
    display: flex;
    flex-direction: column;
    border-top: 4px solid var(--oaii-primary);
    transition: box-shadow .25s, transform .15s;
}
.oaii-project-card-item:hover {
    box-shadow: 0 8px 30px rgba(0,0,0,.08);
    transform: translateY(-2px);
}
.oaii-project-card-icon {
    font-size: 36px;
    margin-bottom: 12px;
    display: block;
}
.oaii-project-card-item h3 {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 8px;
    color: var(--oaii-text);
}
.oaii-project-card-desc {
    font-size: 14px;
    color: var(--oaii-text-light);
    line-height: 1.7;
    margin-bottom: 16px;
    flex: 1;
}
.oaii-project-card-teams {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 20px;
}
.oaii-project-card-teams .oaii-tag {
    font-size: 11px;
    padding: 3px 10px;
}
.oaii-project-card-item .oaii-btn {
    align-self: flex-start;
}

/* ---------- 3. 项目页标签色系（限定在项目页容器内，不覆盖全站 .oaii-tag） ---------- */
.oaii-project-card-teams .oaii-tag,
.oaii-spec-table .oaii-tag {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 500;
}
.oaii-project-card-teams .oaii-tag-blue,
.oaii-spec-table .oaii-tag-blue {
    background: #f5f8fc;
    color: var(--oaii-primary);
}
.oaii-project-card-teams .oaii-tag-cyan,
.oaii-spec-table .oaii-tag-cyan {
    background: #E6F9FF;
    color: #005fcd;
}
.oaii-project-card-teams .oaii-tag-green,
.oaii-spec-table .oaii-tag-green {
    background: #E6FAF3;
    color: #06D6A0;
}
.oaii-project-card-teams .oaii-tag-orange,
.oaii-spec-table .oaii-tag-orange {
    background: #FFF3E6;
    color: #005fcd;
}
.oaii-project-card-teams .oaii-tag-purple,
.oaii-spec-table .oaii-tag-purple {
    background: #F0F0FF;
    color: #7C3AED;
}
.oaii-project-card-teams .oaii-tag-red,
.oaii-spec-table .oaii-tag-red {
    background: #FDE8EC;
    color: #EF476F;
}
.oaii-project-card-teams .oaii-tag-gray,
.oaii-spec-table .oaii-tag-gray {
    background: var(--oaii-border);
    color: var(--oaii-text-light);
}

/* ---------- 4. 筛选栏 + 表格 ---------- */
.oaii-section-header-left {
    text-align: left;
}
.oaii-section-header-left p {
    margin: 0;
}

.oaii-spec-section {
    background: #fff;
}
/* 项目页筛选栏（限定在 spec-section 内，不覆盖首页 filter-bar 居中样式） */
.oaii-spec-section .oaii-filter-bar {
    display: flex;
    gap: 8px;
    margin-bottom: 32px;
    flex-wrap: wrap;
    justify-content: flex-start;
}
.oaii-spec-section .oaii-filter-btn {
    padding: 8px 20px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 500;
    background: #fff;
    border: 1px solid var(--oaii-border);
    color: var(--oaii-text-light);
    cursor: pointer;
    transition: all .2s;
    font-family: inherit;
}
.oaii-spec-section .oaii-filter-btn:hover {
    border-color: var(--oaii-primary);
    color: var(--oaii-primary);
}
.oaii-spec-section .oaii-filter-btn.active {
    background: var(--oaii-primary);
    color: #fff;
    border-color: var(--oaii-primary);
}

.oaii-spec-table-wrap {
    border-radius: var(--oaii-radius);
    overflow-x: auto;
    box-shadow: 0 2px 8px rgba(0,0,0,.06);
}
.oaii-spec-table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
}
.oaii-spec-table thead tr {
    background: var(--oaii-primary);
    color: #fff;
}
.oaii-spec-table th {
    padding: 14px 20px;
    text-align: left;
    font-size: 13px;
    font-weight: 600;
}
.oaii-spec-table td {
    padding: 14px 20px;
    font-size: 14px;
    border-bottom: 1px solid var(--oaii-border);
}
.oaii-spec-table tbody tr {
    transition: background .15s;
}
.oaii-spec-table tbody tr:hover {
    background: rgba(16, 58, 151, .04);
}
.oaii-spec-table tbody tr:last-child td {
    border-bottom: none;
}
.oaii-spec-table td.oaii-spec-date {
    color: var(--oaii-text-light);
}

/* ---------- 5. CTA Banner ---------- */
.oaii-cta-banner {
    background: linear-gradient(135deg, var(--oaii-primary) 0%, #003399 100%);
    padding: 60px 0;
    text-align: center;
    color: #fff;
}
.oaii-cta-banner h2 {
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 12px;
}
.oaii-cta-banner p {
    font-size: 18px;
    opacity: .8;
    margin-bottom: 28px;
}
.oaii-btn-white-primary {
    background: #fff;
    color: var(--oaii-primary);
    border: none;
}
.oaii-btn-white-primary:hover {
    background: rgba(255,255,255,.9);
    box-shadow: 0 4px 16px rgba(0,0,0,.1);
}
.oaii-btn-white-outline {
    background: transparent;
    color: #fff;
    border: 1px solid rgba(255,255,255,.5);
}
.oaii-btn-white-outline:hover {
    background: rgba(255,255,255,.12);
    border-color: #fff;
}

/* ---------- CTA Banner 水平双按钮变体（项目详情页通栏） ---------- */
.oaii-cta-banner-split .oaii-container { padding: 0 24px; }
.oaii-cta-banner-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
}
.oaii-cta-banner-split .oaii-cta-banner-content { text-align: left; max-width: 640px; }
.oaii-cta-banner-split .oaii-cta-banner-content h2 {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 8px;
}
.oaii-cta-banner-split .oaii-cta-banner-content p {
    font-size: 15px;
    opacity: .85;
    margin: 0;
}
.oaii-cta-banner-actions { display: flex; gap: 12px; flex-shrink: 0; }

@media (max-width: 768px) {
    .oaii-cta-banner-row { flex-direction: column; text-align: center; gap: 24px; }
    .oaii-cta-banner-split .oaii-cta-banner-content { text-align: center; max-width: 100%; }
    .oaii-cta-banner-actions { width: 100%; justify-content: center; flex-wrap: wrap; }
}

/* ---------- 按钮补充（仅新增 oaii-btn-ghost 和 oaii-btn-white-primary，不重复定义已有 btn-sm/btn-disabled） ---------- */
.oaii-btn-ghost {
    background: transparent;
    border: 1px solid var(--oaii-border);
    color: var(--oaii-primary);
    border-radius: var(--oaii-radius);
    text-decoration: none;
    transition: all .2s;
    font-family: inherit;
    cursor: pointer;
    padding: 8px 18px;
    font-size: 13px;
}
.oaii-btn-ghost:hover {
    background: rgba(16, 58, 151, .06);
    border-color: var(--oaii-primary);
}

/* ---------- 项目页响应式 ---------- */
@media (max-width: 992px) {
    .oaii-project-card-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
    .oaii-page-hero, .oaii-page-header, .oaii-market-hero, .oaii-events-hero {
        min-height: 250px;
        padding: 30px 0;
        /* 移动端强制使用渐变色，不显示背景图片 */
        background: linear-gradient(120deg, #0a2766, #005fcd) !important;
    }
    .oaii-hero-breadcrumb { bottom: 12px; }
    .oaii-hero-breadcrumb .oaii-container { font-size: 12px; }
    .oaii-page-hero h1 { font-size: 26px; }
    .oaii-page-hero p { font-size: 14px; }
    .oaii-project-card-grid { grid-template-columns: 1fr; }
    .oaii-spec-table th,
    .oaii-spec-table td { padding: 10px 14px; }
}
@media (max-width: 480px) {
    .oaii-page-hero h1 { font-size: 24px; }
    .oaii-project-card-item { padding: 22px; }
    .oaii-project-card-item h3 { font-size: 18px; }
}


/* ============================================================
   关于社区页面 (page-about.php) 新增样式
   ============================================================ */

/* ---------- 面包屑 (复用 page-hero breadcrumb 但别名兼容) ---------- */
.oaii-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    color: rgba(255,255,255,.6);
    margin-bottom: 16px;
}
.oaii-breadcrumb a {
    color: rgba(255,255,255,.75);
    text-decoration: none;
    transition: color .2s;
}
.oaii-breadcrumb a:hover { color: #fff; }
.oaii-breadcrumb span { color: rgba(255,255,255,.5); }

/* ---------- section-header 左对齐 ---------- */
.oaii-section-header.oaii-section-left {
    text-align: left;
    max-width: 100%;
}
.oaii-section-header.oaii-section-left .oaii-section-subtitle {
    text-align: left;
    max-width: 100%;
    margin: 0;
}

/* ---------- 社区定位 ---------- */
.oaii-about-positioning { background: var(--oaii-bg-alt); }
.oaii-home-positioning { background: #fff; }
.oaii-positioning-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 28px;
    align-items: center;
}
.oaii-positioning-bold {
    font-size: 18px;
    line-height: 1.8;
    color: var(--oaii-text);
    margin-bottom: 20px;
}
.oaii-positioning-text {
    font-size: 14px;
    line-height: 1.8;
    color: var(--oaii-text-light);
    margin-bottom: 16px;
}
.oaii-positioning-stats {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* 第一行：单个统计卡片居中，宽度与第二行保持一致 */
.oaii-stat-row-first {
    display: flex;
    justify-content: center;
}
.oaii-stat-row-first .oaii-stat-card {
    width: calc(50% - 8px);
}

/* 第二行：两个统计卡片并排 */
.oaii-stat-row-second {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

/* ---------- 核心价值 (图标圆形背景) ---------- */
.oaii-about-values { background: #fff; }

/* ---------- 发展历程双列布局 ---------- */
.oaii-about-timeline { background: var(--oaii-bg-alt); }
.oaii-timeline-layout {
    display: flex;
    gap: 40px;
    align-items: stretch;
}
.oaii-timeline-track {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    height: auto;
    z-index: auto;
    padding: 32px 32px 32px 48px;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    box-sizing: border-box;
    margin: 0;
}
.oaii-timeline-track::before {
    content: '';
    position: absolute;
    left: 17px;
    top: 44px;
    bottom: 44px;
    width: 2px;
    background: var(--oaii-border);
}
.oaii-timeline-track .oaii-timeline-item {
    position: relative;
    margin-bottom: 0;
    flex: 0 0 auto;
}
.oaii-timeline-track .oaii-timeline-dot {
    position: absolute;
    left: -36px;
    top: 6px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: var(--oaii-primary);
    border: 2px solid #fff;
    box-shadow: 0 0 0 2px var(--oaii-primary);
    z-index: 1;
}
.oaii-timeline-track .oaii-timeline-date {
    font-size: 13px;
    font-weight: 700;
    color: var(--oaii-primary);
    margin-bottom: 4px;
    position: static;
    display: block;
}
.oaii-timeline-track .oaii-timeline-content h4 {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 4px;
    color: var(--oaii-text);
}
.oaii-timeline-track .oaii-timeline-content p {
    font-size: 13px;
    color: var(--oaii-text-light);
    line-height: 1.6;
}
.oaii-milestones-card {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 32px;
    flex: 1;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    margin: 0;
}
.oaii-milestones-card-title {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 16px;
    color: var(--oaii-text);
    flex-shrink: 0;
}
.oaii-milestones-list {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex: 1;
    gap: 0;
}
.oaii-milestone-row {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px;
    background: var(--oaii-bg-alt);
    border-radius: 8px;
    flex: 0 0 auto;
}
.oaii-milestone-icon {
    font-size: 24px;
    flex-shrink: 0;
}
.oaii-milestone-info { display: flex; flex-direction: column; }
.oaii-milestone-title { font-weight: 600; font-size: 14px; color: var(--oaii-text); }
.oaii-milestone-desc { font-size: 12px; color: var(--oaii-text-light); margin-top: 2px; }

/* ---------- 组织架构卡片 ---------- */
.oaii-about-org { background: var(--oaii-bg-alt); }
.oaii-org-cards-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}
.oaii-org-about-card {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 32px;
    text-align: center;
    transition: box-shadow .2s, transform .2s;
}
/* 可点击的链接卡片 */
a.oaii-org-about-card-link {
    display: block;
    text-decoration: none;
    color: inherit;
    cursor: pointer;
}
a.oaii-org-about-card-link:hover {
    color: inherit;
    text-decoration: none;
}
a.oaii-org-about-card-link:hover .oaii-org-about-title {
    color: var(--oaii-primary);
}
.oaii-org-about-card:hover {
    box-shadow: var(--oaii-shadow);
    transform: translateY(-3px);
}
.oaii-org-about-icon {
    font-size: 36px;
    margin-bottom: 12px;
}
.oaii-org-about-title {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 8px;
    color: var(--oaii-text);
}
.oaii-org-about-desc {
    font-size: 13px;
    color: var(--oaii-text-light);
}

/* ---------- 社区机制链接卡片 ---------- */
.oaii-mech-linked {
    display: block;
    text-decoration: none;
    color: inherit;
    transition: box-shadow .2s, transform .2s;
}
.oaii-mech-linked:hover {
    box-shadow: var(--oaii-shadow);
    transform: translateY(-3px);
    border-color: var(--oaii-primary);
}

/* ---------- 社区荣誉 ---------- */
.oaii-honor-stats {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 24px;
    max-width: 900px;
    margin: 0 auto 32px;
}
.oaii-honor-stat-card {
    flex: 0 1 280px;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 28px;
    text-align: center;
    transition: box-shadow .2s;
}
.oaii-honor-stat-card:hover { box-shadow: var(--oaii-shadow); }
.oaii-honor-stat-icon { font-size: 36px; margin-bottom: 8px; }
.oaii-honor-stat-number { font-size: 28px; font-weight: 700; color: var(--oaii-primary); }
.oaii-honor-stat-label { font-size: 13px; color: var(--oaii-text-light); margin-top: 4px; }

/* ---------- 联系我们 ---------- */
.oaii-section-alt { background: var(--oaii-bg-alt); }
.oaii-contact-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-bottom: 32px;
}
.oaii-contact-card {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 32px;
    text-align: center;
    transition: box-shadow .2s;
}
.oaii-contact-card:hover { box-shadow: var(--oaii-shadow); }
.oaii-contact-card-icon { font-size: 36px; margin-bottom: 12px; }
.oaii-contact-card-title { font-size: 18px; font-weight: 600; margin-bottom: 8px; color: var(--oaii-text); }
.oaii-contact-card-desc { font-size: 13px; color: var(--oaii-text-light); margin-bottom: 12px; }
.oaii-contact-card-link { font-size: 13px; color: var(--oaii-primary); text-decoration: none; transition: color .2s; }
.oaii-contact-card-link:hover { color: var(--oaii-primary-dark); }

/* 地址信息 */
.oaii-contact-address-card {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 24px;
    max-width: 800px;
    margin: 0 auto;
}
.oaii-contact-address-inner {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.oaii-contact-address-icon { font-size: 24px; flex-shrink: 0; }
.oaii-contact-address-title { font-size: 14px; font-weight: 600; margin-bottom: 4px; color: var(--oaii-text); }
.oaii-contact-address-text { font-size: 13px; color: var(--oaii-text-light); margin-bottom: 0; }
/* 地图容器 — 与 oaii-contact-address-inner 同宽 */
.oaii-contact-map {
    width: 100%;
    height: 320px;
    border-radius: 8px;
    overflow: hidden;
    background: var(--oaii-bg-alt);
}
/* 无 API Key 时的回退链接 */
.oaii-contact-map-fallback {
    width: 100%;
    height: 80px;
    border-radius: 8px;
    background: var(--oaii-bg-alt);
    display: flex;
    align-items: center;
    justify-content: center;
}
.oaii-contact-map-link {
    color: var(--oaii-primary, #005fcd);
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    transition: color .2s;
}
.oaii-contact-map-link:hover { color: var(--oaii-primary-dark, #003d99); }

/* ---------- 关于社区 CTA ---------- */
.oaii-about-cta .oaii-btn-white {
    background: #fff;
    color: var(--oaii-primary);
    border: none;
}
.oaii-about-cta .oaii-btn-white:hover {
    background: rgba(255,255,255,.9);
    box-shadow: 0 4px 16px rgba(0,0,0,.1);
}

/* ---------- 关于社区响应式 ---------- */
@media (max-width: 1024px) {
    .oaii-positioning-grid { grid-template-columns: 1fr; gap: 32px; }
    .oaii-timeline-layout { flex-direction: column; }
    .oaii-timeline-track { justify-content: flex-start; }
    .oaii-milestones-list { gap: 16px; }
    .oaii-org-cards-grid { grid-template-columns: repeat(2, 1fr); }
    .oaii-honor-stats { max-width: 100%; }
}
@media (max-width: 860px) {
    .oaii-org-cards-grid { grid-template-columns: 1fr; }
    .oaii-contact-cards { grid-template-columns: 1fr; }
    .oaii-contact-map { height: 260px; }
    .oaii-honor-stat-card { flex: 1 1 100%; max-width: 400px; }
    .oaii-milestones-card { padding: 24px; }
    .oaii-stat-row-first .oaii-stat-card { width: 100%; }
}
@media (max-width: 480px) {
    .oaii-honor-stat-number { font-size: 22px; }
    .oaii-contact-map { height: 220px; }
    .oaii-contact-address-card { padding: 16px; }
    .oaii-stat-row-first .oaii-stat-card { width: 100%; }
    .oaii-stat-row-second { grid-template-columns: 1fr 1fr; }
}

/* ============================================================
 * 组织架构页面 (page-organization.php)
 * ============================================================ */
.oaii-org-page-section { padding: 48px 0 64px; }

/* ---- 侧边栏 + 主内容布局 ---- */
.oaii-org-with-sidebar {
    display: flex;
    gap: 32px;
    align-items: stretch;
}

.oaii-org-sidebar {
    position: sticky;
    top: 90px;
    width: 200px;
    flex-shrink: 0;
    align-self: flex-start;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.oaii-org-sidebar a,
.oaii-org-sidebar-toggle {
    display: block;
    padding: 10px 14px;
    font-size: 14px;
    color: var(--oaii-text-light);
    border-radius: 8px;
    transition: all .2s;
    text-decoration: none;
    cursor: pointer;
}

.oaii-org-sidebar a:hover,
.oaii-org-sidebar-toggle:hover {
    background: #f5f8fc;
    color: var(--oaii-primary);
}

.oaii-org-sidebar a.active {
    background: var(--oaii-primary);
    color: #fff;
}

.oaii-sidebar-arrow { font-size: 11px; margin-left: 4px; }

.oaii-sidebar-sub {
    display: none;
    flex-direction: column;
    padding-left: 16px;
}

.oaii-sidebar-sub.open { display: flex; }

.oaii-sidebar-sub a {
    font-size: 13px;
    padding: 6px 12px;
}

.oaii-org-main {
    flex: 1;
    min-width: 0;
    background: transparent;
    color: var(--oaii-text);
    border: none;
    font-size: inherit;
    padding: 0;
}

/* ---- 委员会卡片 ---- */
.oaii-org-tree { display: flex; flex-direction: column; gap: 24px; }

.oaii-org-committee {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 12px;
    padding: 28px;
}

.oaii-org-committee-header {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 20px;
}

.oaii-org-committee-name {
    font-size: 18px;
    font-weight: 700;
    color: var(--oaii-text);
    margin-bottom: 4px;
}

.oaii-org-committee-desc {
    font-size: 14px;
    color: var(--oaii-text-light);
    line-height: 1.6;
}

/* ---- 成员卡片 ---- */
.oaii-org-member-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 12px;
}

.oaii-org-member-card {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 8px;
    transition: all .2s;
}

.oaii-org-member-card:hover {
    border-color: var(--oaii-primary);
    box-shadow: 0 2px 8px rgba(16,58,151,.08);
}

.oaii-org-member-avatar {
    width: 60px;
    height: 60px;
    border-radius: 8px;
    overflow: hidden;
    background: #e2e8f0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.oaii-org-member-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.oaii-org-member-info { min-width: 0; }

.oaii-org-member-name {
    font-size: 15px;
    font-weight: 600;
    color: var(--oaii-text);
}

.oaii-org-member-role {
    font-size: 13px;
    color: var(--oaii-primary);
    font-weight: 500;
}

.oaii-org-member-org {
    font-size: 13px;
    color: var(--oaii-text-light);
}

/* 联席主席单独一行 */
.oaii-org-chair-row {
    margin-bottom: 16px;
    padding-bottom: 16px;
    border-bottom: 1px dashed var(--oaii-border);
}

/* ---- 项目群（可折叠） ---- */
.oaii-org-project-group {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 12px;
    overflow: hidden;
}

.oaii-org-project-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 20px 28px;
    cursor: pointer;
    transition: background .2s;
    user-select: none;
}

.oaii-org-project-header:hover { background: #f8fafc; }

.oaii-toggle-icon {
    font-size: 12px;
    color: var(--oaii-text-light);
    flex-shrink: 0;
    transition: transform .2s;
}

.oaii-org-project-icon {
    font-size: 24px;
    flex-shrink: 0;
}

.oaii-org-project-name {
    font-size: 16px;
    font-weight: 700;
    color: var(--oaii-text);
}

.oaii-org-project-lead {
    font-size: 13px;
    color: var(--oaii-text-light);
    margin-top: 2px;
}

.oaii-org-project-body {
    padding: 0 28px 24px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* ---- 工作组 ---- */
.oaii-org-work-group {
    background: #f8fafc;
    border: 1px solid var(--oaii-border);
    border-radius: 8px;
    padding: 16px 20px;
}

.oaii-org-work-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.oaii-org-work-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--oaii-primary);
    flex-shrink: 0;
}

.oaii-org-work-name {
    font-size: 15px;
    font-weight: 600;
    color: var(--oaii-text);
}

.oaii-org-work-lead {
    font-size: 13px;
    color: var(--oaii-text-light);
    margin-left: auto;
}

/* ---- 负责人/组长卡片区块 ---- */
.oaii-org-lead-block {
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 1px dashed var(--oaii-border);
}
.oaii-org-lead-label {
    display: inline-block;
    font-size: 12px;
    font-weight: 600;
    color: #fff;
    background: var(--oaii-primary);
    padding: 2px 12px;
    border-radius: 10px;
    margin-bottom: 10px;
}
.oaii-org-lead-label-sm {
    font-size: 11px;
    padding: 2px 10px;
    background: var(--oaii-accent);
}
.oaii-org-lead-block .oaii-org-member-grid {
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}

/* ---- 响应式 ---- */
@media (max-width: 1024px) {
    .oaii-org-with-sidebar { flex-direction: column; }
    .oaii-org-sidebar {
        position: sticky;
        top: 70px;
        width: 100%;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 6px;
    }
    .oaii-org-sidebar a,
    .oaii-org-sidebar-toggle { white-space: nowrap; }
    .oaii-sidebar-sub {
        position: static;
        flex-direction: row;
        flex-wrap: wrap;
        padding-left: 0;
    }
    .oaii-org-member-grid { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
}

@media (max-width: 640px) {
    .oaii-org-committee { padding: 20px; }
    .oaii-org-project-header { padding: 16px 20px; }
    .oaii-org-project-body { padding: 0 20px 20px; }
    .oaii-org-member-grid { grid-template-columns: 1fr; }
    .oaii-org-member-card { padding: 14px 16px; }
    .oaii-org-member-info { min-width: 0; overflow: visible; }
    .oaii-org-member-name { white-space: normal; word-break: break-word; }
    .oaii-org-member-role { white-space: normal; word-break: break-word; }
    .oaii-org-member-org { white-space: normal; word-break: break-word; }
    .oaii-org-committee-header { flex-direction: column; gap: 12px; }
    .oaii-org-work-lead { margin-left: 0; }
}

/* ============================================================
 * 项目群详情页 — V2 双栏概览 (oaii-project-overview-v2)
 * 参考 GCC 页面布局：左栏介绍 + 右栏联系方式
 * ============================================================ */
.oaii-project-overview-v2 { padding: 48px 0; }

.oaii-overview-v2-grid {
    display: grid;
    grid-template-columns: 1fr 340px;
    gap: 40px;
    align-items: start;
}

/* 左栏 */
.oaii-overview-v2-main { min-width: 0; }

.oaii-overview-v2-leaders {
    margin-bottom: 32px;
    padding-bottom: 24px;
    border-bottom: 1px solid #e2e8f0;
}
.oaii-overview-v2-label {
    font-size: 16px;
    font-weight: 600;
    color: #005fcd;
    margin: 0 0 12px;
}
.oaii-overview-v2-leaders-list { display: flex; flex-direction: column; gap: 8px; }
.oaii-overview-v2-leader { font-size: 15px; color: #334155; line-height: 1.7; }
.oaii-overview-v2-leader-role { font-weight: 600; color: #475569; }
.oaii-overview-v2-leader-name { color: #1e293b; }

.oaii-overview-v2-block { margin-bottom: 28px; }
.oaii-overview-v2-block-title {
    font-size: 16px;
    font-weight: 700;
    color: #005fcd;
    margin: 0 0 10px;
    padding-left: 12px;
    border-left: 3px solid #005fcd;
}
.oaii-overview-v2-block-text {
    font-size: 15px;
    color: #475569;
    line-height: 1.8;
    margin: 0;
}

/* 右栏 */
.oaii-overview-v2-sidebar {
    position: sticky;
    top: 24px;
}
.oaii-overview-v2-contact-card {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 24px;
}
.oaii-overview-v2-contact-title {
    font-size: 16px;
    font-weight: 700;
    color: #005fcd;
    margin: 0 0 16px;
    padding-bottom: 12px;
    border-bottom: 2px solid #005fcd;
}
.oaii-overview-v2-contact-list { display: flex; flex-direction: column; gap: 16px; }
.oaii-overview-v2-contact-item {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.oaii-overview-v2-contact-name {
    font-size: 15px;
    font-weight: 600;
    color: #1e293b;
}
.oaii-overview-v2-contact-email {
    font-size: 14px;
    color: #3b82f6;
    text-decoration: none;
    word-break: break-all;
    transition: color 0.2s;
}
.oaii-overview-v2-contact-email:hover { color: #005fcd; text-decoration: underline; }

/* 右栏 - 项目组列表 */
.oaii-overview-v2-sub-group-list {
    display: flex;
    flex-direction: column;
    gap: 0;
}
.oaii-overview-v2-sub-group-item {
    padding: 8px 0;
    border-bottom: 1px solid #e8edf2;
}
.oaii-overview-v2-sub-group-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}
.oaii-overview-v2-sub-group-name {
    font-size: 14px;
    font-weight: 600;
    color: #1e293b;
    display: block;
    margin-bottom: 4px;
}
.oaii-overview-v2-sub-group-leaders {
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.oaii-overview-v2-sub-group-leader {
    font-size: 12px;
    color: #64748b;
    line-height: 1.5;
}
.oaii-overview-v2-sub-group-link {
    font-size: 14px;
    color: #005fcd;
    text-decoration: none;
    transition: color 0.2s;
}
.oaii-overview-v2-sub-group-link:hover { color: #005fcd; }

/* 项目组详情 section */
.oaii-sub-groups-section { background: #f5f7fa; }
.oaii-sub-groups-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
    gap: 24px;
}
.oaii-sub-group-card {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 28px;
    transition: box-shadow 0.3s;
    scroll-margin-top: 80px;
}
.oaii-sub-group-card:hover { box-shadow: 0 4px 20px rgba(0,0,0,0.08); }
.oaii-sub-group-card-title {
    font-size: 18px;
    font-weight: 700;
    color: #005fcd;
    margin: 0 0 20px;
    padding-bottom: 12px;
    border-bottom: 2px solid #005fcd;
}
.oaii-sub-group-block { margin-bottom: 18px; }
.oaii-sub-group-block:last-child { margin-bottom: 0; }
.oaii-sub-group-label {
    font-size: 14px;
    font-weight: 600;
    color: #64748b;
    margin: 0 0 8px;
}
.oaii-sub-group-leaders { display: flex; flex-direction: column; gap: 6px; }
.oaii-sub-group-leader {
    font-size: 14px;
    color: #1e293b;
    line-height: 1.6;
}
.oaii-sub-group-leader-role { font-weight: 600; color: #005fcd; }
.oaii-sub-group-text {
    font-size: 14px;
    color: #475569;
    line-height: 1.7;
    margin: 0;
}
.oaii-sub-group-contacts { display: flex; flex-direction: column; gap: 6px; }
.oaii-sub-group-contact {
    font-size: 14px;
    color: #1e293b;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.oaii-sub-group-contact a {
    color: #3b82f6;
    text-decoration: none;
    word-break: break-all;
}
.oaii-sub-group-contact a:hover { text-decoration: underline; }

/* 响应式 */
@media (max-width: 900px) {
    .oaii-overview-v2-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }
    .oaii-overview-v2-sidebar { position: static; }
}

/* ============================================================
 * 项目群详情页 — 概览区块样式 (oaii-project-overview)
 * 对应原型 projects-rack.html / projects-infra.html
 * ============================================================ */

/* 简介卡片 */
.oaii-overview-intro-card {
    padding: 32px;
    margin-bottom: 32px;
    background: var(--oaii-bg-light, #f5f7fa);
    border-radius: var(--oaii-radius, 12px);
    border: 1px solid var(--oaii-border, #e2e8f0);
}
.oaii-overview-intro-card p {
    font-size: 14px;
    color: var(--oaii-text-secondary, #64748b);
    line-height: 1.8;
    margin: 0;
}

/* 负责人卡片网格 */
.oaii-overview-leaders-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    margin-bottom: 32px;
}
.oaii-overview-leader-card {
    padding: 24px;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    display: flex;
    align-items: center;
    gap: 16px;
    transition: box-shadow 0.2s;
}
.oaii-overview-leader-card:hover {
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}
.oaii-overview-leader-avatar {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    color: #fff;
    font-weight: 600;
    flex-shrink: 0;
}
.oaii-overview-leader-role {
    font-size: 14px;
    font-weight: 600;
    color: #005fcd;
}
.oaii-overview-leader-name {
    font-size: 16px;
    font-weight: 700;
    margin: 2px 0;
    color: #1e293b;
}
.oaii-overview-leader-org {
    font-size: 12px;
    color: #94a3b8;
}

/* 应用范围卡片 */
.oaii-overview-scope-card {
    padding: 28px;
    margin-bottom: 32px;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-left: 4px solid #005fcd;
    border-radius: 12px;
}
.oaii-overview-scope-card h4 {
    font-size: 16px;
    font-weight: 600;
    margin: 0 0 12px 0;
    color: #1e293b;
}
.oaii-overview-scope-card p {
    font-size: 14px;
    color: #64748b;
    line-height: 1.8;
    margin: 0;
}

/* 工作组卡片网格 */
.oaii-overview-wg-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    margin-bottom: 32px;
}
.oaii-overview-wg-card {
    padding: 28px;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    transition: box-shadow 0.2s;
}
.oaii-overview-wg-card:hover {
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}
.oaii-overview-wg-card h4 {
    font-size: 16px;
    font-weight: 600;
    margin: 0 0 8px 0;
    color: #1e293b;
}
.oaii-overview-wg-card p {
    font-size: 14px;
    color: #64748b;
    line-height: 1.6;
    margin: 0;
}
.oaii-overview-wg-participants {
    margin-top: 10px;
    font-size: 12px;
    color: #94a3b8;
}

/* 工作组左边框颜色 */
.oaii-overview-wg-card.oaii-wg-blue   { border-left: 4px solid #0a2766; }
.oaii-overview-wg-card.oaii-wg-cyan   { border-left: 4px solid #005fcd; }
.oaii-overview-wg-card.oaii-wg-green  { border-left: 4px solid #06D6A0; }
.oaii-overview-wg-card.oaii-wg-orange { border-left: 4px solid #005fcd; }
.oaii-overview-wg-card.oaii-wg-purple { border-left: 4px solid #7B68EE; }

/* 主要业务点卡片 */
.oaii-overview-bp-card {
    padding: 28px;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
}
.oaii-overview-bp-card h4 {
    font-size: 16px;
    font-weight: 600;
    margin: 0 0 16px 0;
    color: #1e293b;
}
.oaii-overview-bp-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
}
.oaii-overview-bp-item {
    display: flex;
    gap: 10px;
    font-size: 14px;
    color: #64748b;
    line-height: 1.6;
}
.oaii-overview-bp-arrow {
    color: #005fcd;
    flex-shrink: 0;
    font-weight: 600;
}

/* 项目群详情页 — 活动日历 & 文档区块 */
.oaii-project-events-section {
    background: #f8fafc;
}
.oaii-project-docs-section {
    background: #fff;
}

/* 响应式 */
@media (max-width: 768px) {
    .oaii-overview-leaders-grid { grid-template-columns: 1fr; }
    .oaii-overview-wg-grid { grid-template-columns: 1fr; }
    .oaii-overview-bp-grid { grid-template-columns: 1fr; }
    .oaii-overview-intro-card,
    .oaii-overview-scope-card,
    .oaii-overview-wg-card,
    .oaii-overview-bp-card { padding: 20px; }
}

/* ============================================================
 * 生态中心 (Marketplace) — 完整组件样式
 * 对应原型 marketplace.html
 * ============================================================ */

/* --- 市集头部 + 二级导航 --- */
.oaii-market-hero {
    background: var(--oaii-hero-bg);
    color: #fff;
    min-height: 350px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 60px 0;
    margin-top: var(--oaii-header-h);
    position: relative;
    overflow: hidden;
}
.oaii-market-hero h1 {
    font-size: 30px;
    margin-bottom: 8px;
}
.oaii-market-hero p {
    color: rgba(255,255,255,.85);
    max-width: 760px;
    margin-bottom: 26px;
}
.oaii-market-tabs-bar {
    padding-top: 0;
    text-align: left;
}
.oaii-market-tabs {
    display: inline-flex;
    gap: 4px;
    background: #eef1f6;
    padding: 4px;
    border-radius: 12px;
}
.oaii-market-tabs a {
    padding: 10px 28px;
    color: #5a6272;
    font-weight: 600;
    font-size: 14px;
    border-radius: 9px;
    background: transparent;
    cursor: pointer;
    transition: all .25s ease;
    position: relative;
}
.oaii-market-tabs a.active {
    background: var(--oaii-primary);
    color: #fff;
    box-shadow: 0 2px 8px rgba(16,58,151,.25);
}
.oaii-market-tabs a:hover:not(.active) {
    background: rgba(16,58,151,.08);
    color: var(--oaii-primary);
}

/* --- 主体 --- */
.oaii-market-body {
    padding: 36px 0 64px;
}
.oaii-market-sec-head h2 {
    font-size: 24px;
    color: var(--oaii-primary);
    margin-bottom: 6px;
    padding-left: 20px;
}
.oaii-market-sec-head p {
    color: var(--oaii-text-light);
    font-size: 14.5px;
    padding-left: 20px;
}

/* --- 标签 --- */
.oaii-market-tag {
    display: inline-block;
    font-size: 12px;
    padding: 2px 10px;
    border-radius: 99px;
    background: #dcebfb;
    color: var(--oaii-primary);
    font-weight: 600;
    white-space: nowrap;
}
.oaii-market-tag.green { background: #e2f5ec; color: #1d9e6c; }
.oaii-market-tag.orange { background: #eef2fb; color: #005fcd; }
.oaii-market-tag.red { background: #fde3e3; color: #d43030; }

/* --- 按钮 --- */
.oaii-market-btn {
    display: inline-block;
    padding: 9px 22px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    border: 1px solid transparent;
    transition: all .2s;
    text-decoration: none;
}
.oaii-market-btn-primary {
    background: var(--oaii-primary);
    color: #fff;
}
.oaii-market-btn-primary:hover { background: var(--oaii-primary-dark); color: #fff; }
.oaii-market-btn-outline {
    border-color: var(--oaii-primary);
    color: var(--oaii-primary);
    background: #fff;
}
.oaii-market-btn-outline:hover { background: #eef6fd; }
.oaii-market-btn-ghost {
    border-color: var(--oaii-border);
    color: var(--oaii-text-light);
    background: #fff;
}
.oaii-market-btn-ghost:hover { border-color: var(--oaii-primary); color: var(--oaii-primary); }
.oaii-market-btn-sm { padding: 5px 14px; font-size: 13px; }

/* --- 认证项目卡片网格 --- */
.oaii-cert-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 22px;
}
.oaii-cert-card {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 12px;
    padding: 24px;
    box-shadow: var(--oaii-shadow);
    display: flex;
    flex-direction: column;
    gap: 12px;
    transition: box-shadow .2s;
}
.oaii-cert-card:hover { box-shadow: 0 8px 28px rgba(16,58,151,.14); }
.oaii-cert-card .cc-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.oaii-cert-card h3 {
    font-size: 18px;
    color: var(--oaii-primary);
}
.oaii-cert-card p {
    color: var(--oaii-text-light);
    font-size: 14px;
    flex: 1;
}
.oaii-cert-card .cc-foot {
    display: flex;
    gap: 10px;
}

/* --- Panel --- */
.oaii-panel {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 12px;
    padding: 26px;
    box-shadow: var(--oaii-shadow);
    margin-bottom: 22px;
}
.oaii-panel h2 {
    font-size: 19px;
    color: var(--oaii-primary);
    margin-bottom: 14px;
    padding-left: 12px;
    border-left: 4px solid var(--oaii-primary);
}

/* --- 认证流程图 --- */
.oaii-flow-chart {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 0;
    margin: 18px 0 8px;
}
.oaii-flow-step {
    flex: 1;
    min-width: 130px;
    background: #eef6fd;
    border: 1.5px solid var(--oaii-primary);
    border-radius: 10px;
    padding: 12px;
    margin: 6px 18px 6px 0;
    position: relative;
    transition: background .2s;
}
.oaii-flow-step::after {
    content: "\25B6";
    position: absolute;
    right: -20px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--oaii-primary);
    font-size: 12px;
}
.oaii-flow-step:last-child::after { display: none; }
.oaii-flow-step .step-no {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: var(--oaii-primary);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 6px;
}
.oaii-flow-step b {
    display: block;
    font-size: 13.5px;
    color: var(--oaii-primary);
    margin-bottom: 3px;
}
.oaii-flow-step span {
    font-size: 12px;
    color: var(--oaii-text-light);
    display: block;
}
.oaii-flow-step.self {
    background: #fff;
    border-style: dashed;
}
.oaii-flow-step.self .step-no { background: var(--oaii-text-light); }
.oaii-flow-step.clickable { cursor: pointer; }
.oaii-flow-step.clickable:hover {
    background: var(--oaii-primary);
}
.oaii-flow-step.clickable:hover b,
.oaii-flow-step.clickable:hover span,
.oaii-flow-step.clickable:hover .step-no { color: #fff; }

/* 下载模板步骤 */
.oaii-flow-step.download { cursor: pointer; }
.oaii-flow-step.download .step-no { background: #10b981; }
.oaii-flow-step.download:hover {
    background: #10b981;
    border-color: #10b981;
}
.oaii-flow-step.download:hover b,
.oaii-flow-step.download:hover span,
.oaii-flow-step.download:hover .step-no {
    color: #fff;
}
.oaii-flow-step.download:hover .step-no { background: rgba(255,255,255,.25); }

/* --- 申请入口条 --- */
.oaii-apply-strip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    background: linear-gradient(90deg, var(--oaii-primary-dark), var(--oaii-primary));
    border-radius: 10px;
    padding: 16px 22px;
    color: #fff;
    margin: 18px 0 6px;
}
.oaii-apply-strip b { font-size: 15px; }
.oaii-apply-strip span { font-size: 13px; color: rgba(255,255,255,.75); }
.oaii-apply-strip .oaii-market-btn {
    background: #fff;
    color: var(--oaii-primary);
}
.oaii-apply-strip .oaii-market-btn:hover {
    background: rgba(255,255,255,.15);
}
.oaii-apply-strip-actions {
    display: flex;
    align-items: center;
    gap: 12px;
}
.oaii-apply-strip-actions .oaii-market-btn-ghost {
    background: transparent;
    color: #fff;
    border: 1px solid rgba(255,255,255,.6);
}
.oaii-apply-strip-actions .oaii-market-btn-ghost:hover {
    background: rgba(255,255,255,.12);
}
.oaii-apply-strip-actions .oaii-market-btn-ghost.disabled {
    opacity: .5;
    cursor: not-allowed;
    pointer-events: none;
}

/* --- KPI 指标条 --- */
.oaii-kpi-band {
    display: flex;
    gap: 40px;
    background: #eef6fd;
    border: 1px solid #dcebfb;
    border-radius: 10px;
    padding: 18px 26px;
    margin: 16px 0;
}
.oaii-kpi-band .oaii-kpi b {
    font-size: 26px;
    color: var(--oaii-primary);
    font-weight: 800;
}
.oaii-kpi-band .oaii-kpi span {
    display: block;
    font-size: 12.5px;
    color: var(--oaii-text-light);
}

/* --- 筛选栏 --- */
.oaii-filter-bar {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    margin: 14px 0;
    padding: 14px 16px;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 10px;
}
.oaii-filter-bar label {
    font-size: 13px;
    color: var(--oaii-text-light);
    font-weight: 600;
}
.oaii-filter-bar select,
.oaii-filter-bar input {
    padding: 7px 12px;
    border: 1px solid var(--oaii-border);
    border-radius: 6px;
    font-size: 13.5px;
    color: var(--oaii-text);
    background: #fff;
    min-width: 130px;
    font-family: inherit;
}
.oaii-filter-search {
    flex: 1;
    min-width: 200px;
}

/* --- 数据表格 --- */
.oaii-table-wrap {
    border: 1px solid var(--oaii-border);
    border-radius: 10px;
    overflow: hidden;
    overflow-x: auto;
}
table.oaii-data-table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
    font-size: 13.5px;
}
table.oaii-data-table th {
    background: var(--oaii-primary);
    color: #fff;
    padding: 11px 12px;
    text-align: left;
    font-weight: 600;
    white-space: nowrap;
}
table.oaii-data-table td {
    padding: 11px 12px;
    border-bottom: 1px solid var(--oaii-border);
    color: var(--oaii-text-light);
}
table.oaii-data-table tr:hover td {
    background: #eef6fd;
}
.oaii-cert-link {
    color: var(--oaii-primary);
    font-weight: 600;
    white-space: nowrap;
    cursor: pointer;
}

/* --- 产品名录 --- */
.oaii-catalog-layout {
    display: grid;
    grid-template-columns: 250px 1fr;
    gap: 24px;
    align-items: start;
}
.oaii-catalog-side {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 10px;
    padding: 20px;
    box-shadow: var(--oaii-shadow);
    position: sticky;
    top: 86px;
}
.oaii-catalog-side h4 {
    font-size: 14px;
    color: var(--oaii-primary);
    margin: 14px 0 8px;
}
.oaii-catalog-side h4:first-child { margin-top: 0; }
.oaii-catalog-opt {
    display: block;
    padding: 5px 8px;
    font-size: 13.5px;
    color: var(--oaii-text-light);
    border-radius: 6px;
    cursor: pointer;
    transition: background .15s, color .15s;
}
.oaii-catalog-opt:hover { background: #eef6fd; }
.oaii-catalog-opt.on {
    background: #dcebfb;
    color: var(--oaii-primary);
    font-weight: 600;
}
.oaii-catalog-opt .cnt {
    float: right;
    color: var(--oaii-text-light);
    font-size: 12px;
}
.oaii-product-row {
    display: grid;
    grid-template-columns: 2fr 1.2fr 1fr 1fr 1fr;
    gap: 12px;
    align-items: center;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 10px;
    padding: 14px 18px;
    margin-bottom: 10px;
    box-shadow: var(--oaii-shadow);
    transition: box-shadow .2s;
}
.oaii-product-row:hover { box-shadow: 0 4px 16px rgba(16,58,151,.10); }
.oaii-product-row .p-name b {
    display: block;
    font-size: 14.5px;
    color: var(--oaii-primary);
}
.oaii-product-row .p-name span {
    font-size: 12px;
    color: var(--oaii-text-light);
}
.oaii-product-row .cell {
    font-size: 13px;
    color: var(--oaii-text-light);
}
.oaii-product-row .cell small {
    display: block;
    color: var(--oaii-text-light);
    font-size: 11px;
    opacity: .7;
}

/* --- 产品名录卡片 (新版) --- */
.oaii-product-card {
    display: flex;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 12px;
    margin-bottom: 16px;
    box-shadow: var(--oaii-shadow);
    transition: box-shadow .2s, transform .2s;
    overflow: hidden;
}
.oaii-product-card:hover {
    box-shadow: 0 6px 20px rgba(16,58,151,.12);
    transform: translateY(-2px);
}
.oaii-product-card-info {
    flex: 1;
    padding: 20px 24px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.oaii-product-card-name {
    font-size: 16px;
    font-weight: 700;
    margin: 0;
}
.oaii-product-card-name a {
    color: var(--oaii-primary);
    text-decoration: none;
    transition: color .15s;
}
.oaii-product-card-name a:hover {
    color: var(--oaii-primary-dark);
    text-decoration: underline;
}
.oaii-product-card-desc {
    font-size: 13.5px;
    color: var(--oaii-text-light);
    line-height: 1.6;
    margin: 0;
}
.oaii-product-card-meta {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    margin-top: 6px;
    padding-top: 12px;
    border-top: 1px solid var(--oaii-border);
}
.oaii-product-card-meta .meta-item {
    display: flex;
    flex-direction: column;
    gap: 3px;
}
.oaii-product-card-meta .meta-item label {
    font-size: 11px;
    color: var(--oaii-text-light);
    opacity: .7;
    font-weight: 600;
}
.oaii-product-card-meta .meta-item span {
    font-size: 13px;
    color: var(--oaii-text);
    font-weight: 500;
}
.oaii-product-card-img {
    width: 180px;
    min-width: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f5f7fa;
    border-left: 1px solid var(--oaii-border);
    padding: 16px;
}
.oaii-product-card-img img {
    max-width: 100%;
    max-height: 140px;
    object-fit: contain;
    border-radius: 6px;
}
.oaii-product-card-noimg {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    color: var(--oaii-text-light);
    opacity: .4;
}
.oaii-product-card-noimg span {
    font-size: 12px;
}

/* --- 产品名录 AJAX 加载/分页 --- */
.oaii-catalog-loading {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 40px;
    color: var(--oaii-text-light);
    font-size: 14px;
}
@keyframes oaii-spin {
    to { transform: rotate(360deg); }
}
.oaii-catalog-pager {
    display: flex;
    gap: 4px;
    justify-content: center;
    align-items: center;
    margin-top: 20px;
    flex-wrap: wrap;
}
.oaii-page-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 10px;
    border: 1px solid var(--oaii-border);
    border-radius: 6px;
    font-size: 13px;
    color: var(--oaii-text);
    background: #fff;
    cursor: pointer;
    transition: all .15s ease;
    text-decoration: none;
}
.oaii-page-btn:hover {
    border-color: var(--oaii-primary);
    color: var(--oaii-primary);
}
.oaii-page-btn.on {
    background: var(--oaii-primary);
    border-color: var(--oaii-primary);
    color: #fff;
    font-weight: 600;
}
.oaii-page-ellipsis {
    padding: 0 4px;
    color: var(--oaii-text-light);
}

/* --- 联合实验室 --- */
.oaii-lab-card {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* --- 弹窗 --- */
.oaii-modal-mask {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(10,42,94,.45);
    z-index: 500;
    align-items: center;
    justify-content: center;
    padding: 20px;
}
.oaii-modal-mask.show { display: flex; }
.oaii-modal {
    background: #fff;
    border-radius: 14px;
    max-width: 560px;
    width: 100%;
    max-height: 88vh;
    overflow: auto;
    padding: 30px;
    box-shadow: 0 8px 28px rgba(16,58,125,.14);
}
.oaii-modal h3 {
    color: var(--oaii-primary);
    font-size: 20px;
    margin-bottom: 6px;
}
.oaii-modal-sub {
    color: var(--oaii-text-light);
    font-size: 13.5px;
    margin-bottom: 18px;
}
.oaii-form-row { margin-bottom: 14px; }
.oaii-form-row label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: var(--oaii-text-light);
    margin-bottom: 5px;
}
.oaii-form-row input,
.oaii-form-row select,
.oaii-form-row textarea {
    width: 100%;
    padding: 9px 12px;
    border: 1px solid var(--oaii-border);
    border-radius: 6px;
    font-size: 14px;
    font-family: inherit;
    color: var(--oaii-text);
}
.oaii-form-row textarea {
    resize: vertical;
    min-height: 74px;
}
.oaii-modal-actions {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
    margin-top: 18px;
}
.oaii-upload-box {
    border: 1.5px dashed var(--oaii-primary);
    border-radius: 8px;
    padding: 18px;
    text-align: center;
    color: var(--oaii-text-light);
    font-size: 13px;
    background: #eef6fd;
    cursor: pointer;
    transition: border-color .2s, color .2s;
}
.oaii-upload-box:hover {
    border-color: var(--oaii-primary-dark);
    color: var(--oaii-primary);
}

/* --- Toast --- */
.oaii-toast {
    position: fixed;
    left: 50%;
    bottom: 40px;
    transform: translateX(-50%);
    background: var(--oaii-primary);
    color: #fff;
    padding: 12px 26px;
    border-radius: 8px;
    box-shadow: 0 8px 28px rgba(16,58,125,.14);
    z-index: 600;
    display: none;
    font-size: 14px;
}
.oaii-toast.show { display: block; }

/* --- 响应式 --- */
@media (max-width: 960px) {
    .oaii-cert-grid { grid-template-columns: 1fr; }
    .oaii-catalog-layout { grid-template-columns: 1fr; }
    .oaii-catalog-side { position: static; }
    .oaii-product-row { grid-template-columns: 1fr 1fr; }
    .oaii-product-card-meta { grid-template-columns: repeat(2, 1fr); }
    .oaii-market-tabs { flex-wrap: nowrap; width: 100%; }
    .oaii-market-tabs a { flex: 1; text-align: center; font-size: 13px; padding: 8px 6px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
}
@media (max-width: 768px) {
    .oaii-market-body { padding-left: 15px; padding-right: 15px; }
    .oaii-market-tabs-bar .oaii-container { padding-left: 15px; padding-right: 15px; }
}
@media (max-width: 640px) {
    .oaii-product-row { grid-template-columns: 1fr; }
    .oaii-market-tabs a { font-size: 11px; padding: 7px 4px; }
    .oaii-product-card { flex-direction: column; }
    .oaii-product-card-img {
        width: 100%;
        min-width: 100%;
        border-left: none;
        border-top: 1px solid var(--oaii-border);
        padding: 12px;
    }
    .oaii-product-card-img img { max-height: 200px; }
    .oaii-product-card-meta { grid-template-columns: 1fr 1fr; }
    .oaii-flow-step { min-width: 100%; margin-right: 0; }
    .oaii-flow-step::after { display: none; }
    .oaii-kpi-band { flex-direction: column; gap: 16px; }
    .oaii-apply-strip { flex-direction: column; text-align: center; }
    .oaii-apply-strip-actions { flex-direction: column; width: 100%; }
    .oaii-apply-strip-actions .oaii-market-btn { width: 100%; justify-content: center; }
}

/* ============================================================
 * 厂商详情页 (page-vendor.php)
 * ============================================================ */
.oaii-vendor-page { padding: 40px 24px 60px; }
.oaii-vendor-breadcrumb { margin-bottom: 18px; font-size: 13px; color: var(--oaii-text-light); }
.oaii-vendor-breadcrumb a { color: var(--oaii-primary); text-decoration: none; }
.oaii-vendor-breadcrumb a:hover { text-decoration: underline; }
.oaii-vendor-breadcrumb .sep { margin: 0 6px; }

.oaii-vendor-layout {
    display: grid;
    grid-template-columns: 1fr 340px;
    gap: 32px;
    align-items: start;
}

/* 左列：产品信息 */
.oaii-vendor-product {}
.oaii-vendor-product h1 {
    font-size: 26px;
    font-weight: 800;
    color: var(--oaii-primary);
    margin: 0 0 8px;
}
.oaii-vendor-product .vp-sub {
    font-size: 14px;
    color: var(--oaii-text-light);
    margin-bottom: 20px;
}
.oaii-vendor-product .vp-image {
    width: 100%;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 20px;
    background: var(--oaii-bg-alt);
    aspect-ratio: 16/9;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--oaii-border);
}
.oaii-vendor-product .vp-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.oaii-vendor-product .vp-image .vp-placeholder {
    font-size: 48px;
    color: var(--oaii-text-light);
    opacity: .3;
}
.oaii-vendor-product .vp-desc {
    font-size: 14.5px;
    line-height: 1.8;
    color: var(--oaii-text);
    margin-bottom: 24px;
}
.oaii-vendor-product .vp-meta {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}
.oaii-vendor-product .vp-meta-item {
    background: var(--oaii-bg-alt);
    border: 1px solid var(--oaii-border);
    border-radius: 10px;
    padding: 14px 16px;
}
.oaii-vendor-product .vp-meta-item small {
    display: block;
    font-size: 12px;
    color: var(--oaii-text-light);
    margin-bottom: 4px;
}
.oaii-vendor-product .vp-meta-item b {
    font-size: 14px;
    color: var(--oaii-primary);
}

/* 右列：厂商信息 */
.oaii-vendor-sidebar {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 12px;
    padding: 28px 24px;
    box-shadow: var(--oaii-shadow);
    position: sticky;
    top: 86px;
}
.oaii-vendor-sidebar .vs-logo {
    width: 120px;
    height: 120px;
    margin: 0 auto 16px;
    border-radius: 12px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--oaii-bg-alt);
    border: 1px solid var(--oaii-border);
}
.oaii-vendor-sidebar .vs-logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}
.oaii-vendor-sidebar .vs-logo .vs-logo-placeholder {
    font-size: 40px;
    color: var(--oaii-text-light);
    opacity: .3;
}
.oaii-vendor-sidebar .vs-name {
    text-align: center;
    font-size: 18px;
    font-weight: 700;
    color: var(--oaii-primary);
    margin-bottom: 8px;
}
.oaii-vendor-sidebar .vs-desc {
    font-size: 13px;
    color: var(--oaii-text-light);
    line-height: 1.6;
    margin-bottom: 16px;
    text-align: center;
}
.oaii-vendor-sidebar .vs-website {
    display: block;
    text-align: center;
    background: var(--oaii-primary);
    color: #fff;
    text-decoration: none;
    border-radius: 8px;
    padding: 10px 16px;
    font-size: 14px;
    font-weight: 600;
    transition: background .2s;
}
.oaii-vendor-sidebar .vs-website:hover {
    background: var(--oaii-primary-dark);
}
.oaii-vendor-sidebar .vs-website.disabled {
    background: var(--oaii-border);
    color: var(--oaii-text-light);
    cursor: default;
    pointer-events: none;
}

/* 厂商产品列表 */
.oaii-vendor-other-products {
    margin-top: 32px;
    border-top: 1px solid var(--oaii-border);
    padding-top: 24px;
}
.oaii-vendor-other-products h3 {
    font-size: 16px;
    color: var(--oaii-primary);
    margin-bottom: 14px;
}
.oaii-vendor-other-products .vp-other-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid var(--oaii-border);
    font-size: 13.5px;
}
.oaii-vendor-other-products .vp-other-item:last-child { border-bottom: none; }
.oaii-vendor-other-products .vp-other-item a {
    color: var(--oaii-primary);
    text-decoration: none;
    font-weight: 600;
}
.oaii-vendor-other-products .vp-other-item a:hover { text-decoration: underline; }
.oaii-vendor-other-products .vp-other-item span {
    color: var(--oaii-text-light);
    font-size: 12px;
}

/* 响应式 */
@media (max-width: 960px) {
    .oaii-vendor-layout { grid-template-columns: 1fr; }
    .oaii-vendor-sidebar { position: static; }
}
@media (max-width: 640px) {
    .oaii-vendor-product .vp-meta { grid-template-columns: 1fr; }
}

/* ============================================================
   成员中心页面 (page-members.php / page-members-join.php)
   ============================================================ */

/* ---------- 成员单位分组 ---------- */
.oaii-member-tier {
    margin-bottom: 40px;
}
.oaii-member-tier:last-child {
    margin-bottom: 0;
}
.oaii-member-tier-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
}
.oaii-tier-badge {
    padding: 4px 16px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}
.oaii-tier-badge.platinum { background: #f5f8fc; color: var(--oaii-primary); }
.oaii-tier-badge.gold     { background: #FFF3E6; color: #FF9F1C; }
.oaii-tier-badge.silver   { background: #F0F0F5; color: #3D3D5C; }
.oaii-tier-count {
    font-size: 14px;
    color: var(--oaii-text-light);
}
.oaii-member-grid {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: 8px;
}
.oaii-member-card {
    background: #fff;
    border: 1px solid #EDF2F7;
    border-radius: var(--oaii-radius);
    padding: 5px;
    text-align: center;
    transition: box-shadow .25s, transform .25s;
}
.oaii-member-card:hover {
    box-shadow: 0 4px 20px rgba(0,0,0,.08);
    transform: translateY(-2px);
}
.oaii-member-logo-placeholder {
    width: 60px;
    height: 60px;
    border-radius: 8px;
    background: var(--oaii-bg-alt);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;

}
.oaii-member-logo-img {
    width: 120px;
    height: 56px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    margin: 0 auto 8px;
}
.oaii-member-logo-img img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}
.oaii-member-card h4 {
    font-size: 13px;
    font-weight: 600;

    color: var(--oaii-text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.oaii-member-card p {
    font-size: 11px;
    color: var(--oaii-text-light);
}

/* ---------- 成员权益表格 ---------- */
.oaii-benefits-table-wrap {
    overflow-x: auto;
    border-radius: var(--oaii-radius);
    box-shadow: var(--oaii-shadow);
}
.oaii-benefits-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    background: #fff;
    border-radius: var(--oaii-radius);
    overflow: hidden;
    min-width: 600px;
}
.oaii-benefits-table th,
.oaii-benefits-table td {
    padding: 16px 20px;
    text-align: center;
    font-size: 14px;
    border-bottom: 1px solid #EDF2F7;
}
.oaii-benefits-table th {
    background: var(--oaii-primary);
    color: #fff;
    font-weight: 600;
}
.oaii-benefits-table th:first-child {
    text-align: left;
}
.oaii-benefits-table td:first-child {
    text-align: left;
    font-weight: 500;
    color: var(--oaii-text);
}
.oaii-benefits-table tr:last-child td {
    border-bottom: none;
}
.oaii-benefits-table .check {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.oaii-benefits-table .check svg {
    display: block;
}
.oaii-benefits-table .dash {
    color: var(--oaii-text-light);
}
.oaii-benefits-table tbody tr:hover {
    background: #f5f8fc;
}

/* ---------- 流程步骤卡片 ---------- */
.oaii-steps-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}
.oaii-steps-grid.cols-2 { grid-template-columns: repeat(2, 1fr); }
.oaii-step-card {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 28px 24px;
    text-align: center;
    position: relative;
    transition: box-shadow .25s;
}
.oaii-step-card:hover {
    box-shadow: 0 4px 20px rgba(0,0,0,.08);
}
.oaii-step-card:not(:last-child)::after {
    content: '';
    position: absolute;
    right: -20px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 24px;
    color: var(--oaii-text-light);
    z-index: 1;
}
.oaii-step-number {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #f5f8fc;
    color: var(--oaii-primary);
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 12px;
    font-size: 18px;
}
.oaii-step-card h4 {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 8px;
    color: var(--oaii-text);
}
.oaii-step-card p {
    font-size: 14px;
    color: var(--oaii-text-light);
    line-height: 1.7;
}

/* ---------- GCC 入会说明横幅 ---------- */
.oaii-qualify-banner {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 24px 28px;
    background: linear-gradient(135deg, #f5f8fc, #F0F6FF);
    border-radius: var(--oaii-radius);
    margin-bottom: 32px;
    border: 1px solid rgba(16, 58, 151, 0.12);
}
.oaii-qualify-icon {
    font-size: 32px;
    flex-shrink: 0;
}
.oaii-qualify-body h4 {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 6px;
    color: var(--oaii-text);
}
.oaii-qualify-body p {
    font-size: 14px;
    color: var(--oaii-text-light);
    line-height: 1.7;
    margin: 0;
}
.oaii-qualify-body p strong { color: var(--oaii-primary); }

/* ---------- 加入流程：申请条件 / 所需材料 ---------- */
.oaii-join-info-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}
.oaii-join-info-card {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 32px;
}
.oaii-join-info-card h3 {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 20px;
    color: var(--oaii-text);
}
.oaii-join-info-card ul {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.oaii-join-info-card li {
    display: flex;
    gap: 10px;
    font-size: 14px;
    color: var(--oaii-text-light);
    line-height: 1.6;
}
.oaii-join-info-card .oaii-check-icon {
    color: #06D6A0;
    flex-shrink: 0;
    font-weight: bold;
}
.oaii-join-info-card .oaii-num-icon {
    color: var(--oaii-primary);
    flex-shrink: 0;
    font-weight: 600;
}

/* ---------- 联系咨询卡片 ---------- */
.oaii-contact-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    max-width: 800px;
    margin: 0 auto;
}
.oaii-contact-card {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 24px;
    text-align: center;
    transition: box-shadow .25s;
}
.oaii-contact-card:hover {
    box-shadow: 0 4px 20px rgba(0,0,0,.08);
}
.oaii-contact-card .oaii-contact-icon {
    font-size: 28px;
    margin-bottom: 8px;
}
.oaii-contact-card h4 {
    font-size: 14px;
    font-weight: 600;
    color: var(--oaii-text);
    margin-bottom: 4px;
}
.oaii-contact-card p {
    font-size: 12px;
    color: var(--oaii-text-light);
}

/* ---------- GCC 说明小框（members.html 中用） ---------- */
.oaii-gcc-note {
    max-width: 700px;
    margin: 0 auto 36px;
    padding: 20px 24px;
    background: #f5f8fc;
    border-radius: 8px;
    border-left: 3px solid var(--oaii-primary);
}
.oaii-gcc-note p {
    font-size: 14px;
    color: var(--oaii-text-light);
    line-height: 1.7;
    margin: 0;
}
.oaii-gcc-note p strong { color: var(--oaii-primary); }

/* ---------- 成员中心 CTA 按钮组 ---------- */
.oaii-members-cta-actions {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
}

/* ---------- 背景色辅助 ---------- */
.oaii-section-bg-white { background: #fff; }
.oaii-section-bg-gray  { background: var(--oaii-bg-alt); }

/* ---------- 成员中心响应式 ---------- */
@media (max-width: 1024px) {
    .oaii-steps-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
    .oaii-member-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
    .oaii-steps-grid { grid-template-columns: 1fr; }
    .oaii-step-card:not(:last-child)::after { display: none; }
    .oaii-join-info-grid { grid-template-columns: 1fr; }
    .oaii-contact-grid { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
    .oaii-member-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
}

/* ---------- 社区荣誉详情页 ---------- */
.oaii-award-unit-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}
.oaii-award-unit-card {
    flex: 0 0 calc((100% - 60px) / 4);
    min-width: 200px;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 28px;
    text-align: center;
    transition: box-shadow .2s, transform .2s;
}
.oaii-award-unit-card:hover {
    box-shadow: var(--oaii-shadow);
    transform: translateY(-2px);
}
.oaii-award-unit-icon {
    margin-bottom: 12px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.oaii-award-unit-name {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 4px;
    color: var(--oaii-text);
}
.oaii-award-unit-award {
    font-size: var(--oaii-text-xs, 13px);
    color: var(--oaii-text-light);
}

.oaii-award-person-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
}
.oaii-award-person-card {
    flex: 0 0 calc((100% - 60px) / 4);
    min-width: 200px;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 24px;
    text-align: center;
    transition: box-shadow .2s, transform .2s;
}
.oaii-award-person-card:hover {
    box-shadow: var(--oaii-shadow);
    transform: translateY(-2px);
}
.oaii-award-avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 12px;
}
.oaii-award-avatar img {
    width: 64px;
    height: 64px;
    object-fit: cover;
    border-radius: 50%;
}
.oaii-award-avatar svg {
    display: block;
}
.oaii-award-person-name {
    font-size: 16px;
    font-weight: 600;
    color: var(--oaii-text);
}
.oaii-award-person-award {
    font-size: var(--oaii-text-xs, 13px);
    color: var(--oaii-text-light);
    margin-top: 2px;
}
.oaii-award-person-org {
    font-size: var(--oaii-text-xs, 13px);
    color: #666;
    margin-top: 2px;
}

@media (max-width: 768px) {
    .oaii-award-unit-card   { flex: 0 0 calc((100% - 20px) / 2); min-width: 140px; }
    .oaii-award-person-card { flex: 0 0 calc((100% - 20px) / 2); min-width: 140px; }
}
@media (max-width: 480px) {
    .oaii-award-unit-card   { flex: 0 0 100%; min-width: 0; }
    .oaii-award-person-card { flex: 0 0 100%; min-width: 0; }
}

/* ---------- 社区荣誉时间线 ---------- */
.oaii-honor-year-desc-section {
    padding: 0 0 20px;
}
.oaii-honor-year-desc {
    background: linear-gradient(135deg, #f8f9fc, #eef1f7);
    border-left: 4px solid var(--oaii-primary, #005fcd);
    border-radius: 0 8px 8px 0;
    padding: 20px 24px;
    font-size: 15px;
    line-height: 1.8;
    color: var(--oaii-text);
    text-align: center;
}
.oaii-honor-timeline-bar {
    background: #fff;
    /*border-bottom: 1px solid var(--oaii-border);*/
    padding: 24px 0;
    position: sticky;
    top: var(--oaii-header-h, 64px);
    z-index: 50;
    /*box-shadow: 0 2px 8px rgba(0,0,0,.04);*/
}
.oaii-honor-timeline {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    position: relative;
}
.oaii-honor-timeline::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    height: 2px;
    background: var(--oaii-border);
    z-index: 0;
}
.oaii-honor-year-btn {
    position: relative;
    z-index: 1;
    background: #fff;
    border: 2px solid var(--oaii-border);
    border-radius: 50%;
    width: 86px;
    height: 86px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all .25s ease;
    margin: 0 20px;
    flex-shrink: 0;
}
.oaii-honor-year-btn:hover {
    border-color: var(--oaii-primary, #005fcd);
    transform: translateY(-2px);
}
.oaii-honor-year-btn.is-active {
    background: var(--oaii-primary, #005fcd);
    border-color: var(--oaii-primary, #005fcd);
    box-shadow: 0 4px 16px rgba(16,58,151,.3);
}
.oaii-honor-year-num {
    font-size: 16px;
    font-weight: 700;
    color: var(--oaii-text);
    transition: color .25s ease;
}
.oaii-honor-year-btn.is-active .oaii-honor-year-num {
    color: #fff;
}

/* 年度内容面板 */
.oaii-honor-year-panel {
    display: none;
}
.oaii-honor-year-panel.is-active {
    display: block;
}

/* 移动端时间线 */
@media (max-width: 768px) {
    .oaii-honor-timeline-bar {
        padding: 16px 0;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .oaii-honor-timeline {
        justify-content: flex-start;
        padding: 0 15px;
        gap: 0;
    }
    .oaii-honor-timeline::before {
        display: none;
    }
    .oaii-honor-year-btn {
        width: 44px;
        height: 44px;
        margin: 0 8px;
    }
    .oaii-honor-year-num {
        font-size: 12px;
    }
}

/* ========== 首页社区定位区块移除后按钮 ========== */
.oaii-arch-actions {
    display: flex;
    justify-content: center;
    gap: 16px;
    margin-top: 40px;
    flex-wrap: wrap;
}

/* ========== 首页规范文档下载（双列列表） ========== */
.oaii-docs-layout-v2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    align-items: start;
    margin-top: 32px;
}

/* 列标题 */
.oaii-docs-col-title {
    font-size: 15px;
    font-weight: 700;
    color: var(--oaii-primary);
    padding-bottom: 8px;
    border-bottom: 2px solid var(--oaii-primary);
    margin-bottom: 4px;
}

/* 两列之间的分隔线已移除 */
.oaii-docs-layout-v2 > .oaii-docs-list:first-child {
    border-right: none;
    padding-right: 0;
}

.oaii-docs-col-empty {
    font-size: 13px;
    color: var(--oaii-text-light);
    padding: 24px;
    text-align: center;
    margin: 0;
}

.oaii-docs-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.oaii-docs-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 16px;
    background: #f8fafc;
    border-radius: 8px;
    transition: background .2s, box-shadow .2s;
}

.oaii-docs-row:hover {
    background: #f1f5f9;
    box-shadow: 0 2px 8px rgba(0,0,0,.05);
}

.oaii-docs-row-main {
    flex: 1;
    min-width: 0;
}

.oaii-docs-row-name {
    font-size: 14px;
    font-weight: 600;
    color: var(--oaii-text);
    margin: 0 0 4px 0;
    line-height: 1.4;
}

.oaii-docs-row-meta {
    font-size: 12px;
    color: var(--oaii-text-light);
    margin: 0;
}

.oaii-docs-row-dot {
    margin: 0 6px;
    color: #cbd5e1;
}

.oaii-docs-row-ver {
    color: var(--oaii-primary, #005fcd);
    font-weight: 500;
}

.oaii-docs-empty {
    padding: 48px 24px;
    text-align: center;
    color: var(--oaii-text-light);
    background: #f8fafc;
    border-radius: 12px;
}

.oaii-docs-empty-hint {
    font-size: 13px;
    margin-top: 8px;
    opacity: .8;
}

/* ========== 首页 CTA 双栏 V2（白底卡片） ========== */
.oaii-cta-split-section-v2 {
    padding: 64px 0;
    background: #f5f7fa;
}

.oaii-cta-split-section-v2 .oaii-cta-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}

.oaii-cta-split-section-v2 .oaii-cta-split-card {
    border-radius: 16px;
    padding: 0;
    text-align: left;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    box-shadow: 0 2px 12px rgba(0,0,0,.04);
    transition: transform .2s, box-shadow .2s;
    background: #fff;
    overflow: hidden;
}

.oaii-cta-split-section-v2 .oaii-cta-split-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 30px rgba(0,0,0,.08);
}

/* 顶部图片区域 */
.oaii-cta-card-header {
    height: 180px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: flex;
    align-items: flex-end;
    padding: 20px 28px;
    position: relative;
}

.oaii-cta-card-header::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(0,0,0,0) 40%, rgba(0,0,0,.25) 100%);
    z-index: 0;
}

.oaii-cta-card-header h3 {
    position: relative;
    z-index: 1;
    font-size: 22px;
    font-weight: 700;
    color: #fff;
    margin: 0;
    text-shadow: 0 1px 4px rgba(0,0,0,.2);
}

/* 底部白色内容区域 */
.oaii-cta-card-body {
    padding: 24px 28px 28px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex: 1;
}

.oaii-cta-card-body p {
    font-size: 14px;
    line-height: 1.7;
    color: var(--oaii-text-light);
    margin: 0 0 20px 0;
    max-width: none;
}

.oaii-cta-split-section-v2 .oaii-cta-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: auto;
}

.oaii-cta-split-section-v2 .oaii-cta-actions .oaii-btn {
    padding: 10px 24px;
    font-size: 14px;
    font-weight: 600;
    border-radius: 8px;
    text-decoration: none;
    transition: all .2s;
}

.oaii-cta-split-section-v2 .oaii-cta-actions .oaii-btn-outline-primary {
    background: transparent;
    color: var(--oaii-primary);
    border: 1px solid var(--oaii-primary);
}

.oaii-cta-split-section-v2 .oaii-cta-actions .oaii-btn-outline-primary:hover {
    background: var(--oaii-primary);
    color: #fff;
}

@media (max-width: 768px) {
    .oaii-docs-layout-v2 {
        grid-template-columns: 1fr;
    }
    .oaii-docs-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }
    .oaii-cta-split-section-v2 .oaii-cta-split {
        grid-template-columns: 1fr;
    }
    .oaii-cta-card-header {
        height: 140px;
        padding: 16px 20px;
    }
    .oaii-cta-card-header h3 {
        font-size: 18px;
    }
    .oaii-cta-card-body {
        padding: 20px 20px 24px;
    }
    .oaii-cta-split-section-v2 .oaii-cta-actions {
        width: 100%;
    }
    .oaii-cta-split-section-v2 .oaii-cta-actions .oaii-btn {
        flex: 1;
        text-align: center;
    }
}

/* ---------- 贡献步骤页 ---------- */

/* 贡献协议说明头部 */
/* ========== 技术贡献合并页（贡献路径 + 贡献协议） ========== */

.oaii-section-label {
    display: block;
    text-align: center;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
    color: var(--oaii-text-light);
    text-transform: uppercase;
    margin-bottom: 12px;
}

.oaii-contribution-path-section {
    padding-top: 0;
    padding-bottom: 0;
}

.oaii-contribution-intro-section {
    padding-top: 0;
    padding-bottom: 20px;
}
.oaii-contribution-intro-header {
    text-align: center;
    margin-bottom: 32px;
}
.oaii-contribution-intro-header .oaii-section-title {
    margin-bottom: 12px;
}
.oaii-contribution-intro-header .oaii-section-desc {
    max-width: 640px;
    margin: 0 auto;
}

/* CLA 说明框 */
.oaii-cla-notice {
    background: #eff6ff;
    border: 1px solid #dbeafe;
    border-radius: var(--oaii-radius);
    padding: 28px 32px;
    margin-bottom: 48px;
    position: relative;
}
.oaii-cla-notice h3 {
    font-size: 18px;
    font-weight: 700;
    color: var(--oaii-primary);
    margin-bottom: 12px;
}
.oaii-cla-notice p {
    font-size: 14px;
    line-height: 1.8;
    color: var(--oaii-text);
    margin: 0 0 20px 0;
    max-width: 80%;
}
.oaii-cla-notice .oaii-btn {
    position: absolute;
    right: 32px;
    bottom: 28px;
}

/* 4步骤流程图 */
.oaii-contribution-flow {
    display: flex;
    align-items: stretch;
    justify-content: center;
    gap: 16px;
    flex-wrap: nowrap;
}
.oaii-contribution-flow-card {
    flex: 1;
    min-width: 0;
    background: #eff6ff;
    border-radius: var(--oaii-radius);
    text-align: center;
    color: var(--oaii-text);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    min-height: 170px;
    overflow: hidden;
}
.oaii-contribution-flow-card.is-orange {
    background: #f5f8fc;
}
.oaii-contribution-flow-head {
    width: 100%;
    padding: 18px 12px 30px;
    background: var(--oaii-primary);
    color: #fff;
    clip-path: polygon(0 0, 100% 0, 100% 72%, 50% 100%, 0 72%);
}
.oaii-contribution-flow-card.is-orange .oaii-contribution-flow-head {
    background: var(--oaii-accent);
}
.oaii-contribution-flow-num {
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 1.2;
    opacity: 0.9;
}
.oaii-contribution-flow-num strong {
    display: block;
    font-size: 40px;
    font-weight: 700;
    letter-spacing: 0;
    margin-top: 2px;
}
.oaii-contribution-flow-card p {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 600;
    margin: 0;
    padding: 16px 12px 20px;
    line-height: 1.4;
    color: var(--oaii-text);
}
.oaii-contribution-flow-arrow {
    flex: 0 0 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--oaii-primary);
}

.oaii-contribution-steps {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}
.oaii-contribution-step-card {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 32px 28px;
    transition: box-shadow .25s, transform .25s;
    position: relative;
}
.oaii-contribution-step-card:hover {
    box-shadow: 0 4px 20px rgba(0,0,0,.08);
    transform: translateY(-2px);
}
.oaii-contribution-step-num {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #f5f8fc;
    color: var(--oaii-primary);
    font-weight: 700;
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
}
.oaii-contribution-step-title {
    font-size: 20px;
    font-weight: 600;
    color: var(--oaii-text);
    margin-bottom: 16px;
}
.oaii-contribution-step-body p {
    font-size: 14px;
    color: var(--oaii-text-light);
    line-height: 1.8;
    margin-bottom: 12px;
}
.oaii-contribution-step-body p:last-child {
    margin-bottom: 0;
}
.oaii-contribution-step-body p strong {
    color: var(--oaii-text);
    font-weight: 600;
}
.oaii-contribution-step-body a {
    color: var(--oaii-primary);
    text-decoration: none;
}
.oaii-contribution-step-body a:hover {
    text-decoration: underline;
}

@media (max-width: 768px) {
    .oaii-contribution-steps {
        grid-template-columns: 1fr;
    }
    .oaii-contribution-flow {
        flex-wrap: wrap;
        gap: 12px;
    }
    .oaii-contribution-flow-card {
        flex: 0 0 calc(50% - 6px);
        min-height: 150px;
    }
    .oaii-contribution-flow-head {
        padding: 16px 10px 24px;
    }
    .oaii-contribution-flow-num strong {
        font-size: 32px;
    }
    .oaii-contribution-flow-card p {
        padding: 12px 10px 16px;
        font-size: 13px;
    }
    .oaii-contribution-flow-arrow {
        display: none;
    }
    .oaii-cla-notice p {
        max-width: 100%;
        margin-bottom: 16px;
    }
    .oaii-cla-notice .oaii-btn {
        position: static;
    }
}

/* ========== 贡献指南页面 v2（贡献路径） ========== */

/* 成员单位提示卡片 */
.oaii-contribution-info {
    padding-top: 32px;
    padding-bottom: 0;
}
.oaii-contribution-info-card {
    background: #f4f7fb;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 32px;
}
.oaii-contribution-info-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--oaii-primary);
    margin-bottom: 12px;
}
.oaii-contribution-info-desc {
    font-size: 14px;
    line-height: 1.7;
    color: var(--oaii-text);
    margin-bottom: 20px;
    max-width: 900px;
}
.oaii-contribution-info-card .oaii-btn-primary {
    display: inline-flex;
}

/* Tab 头部 */
.oaii-contribution-main {
    padding-bottom: 48px;
}
.oaii-contribution-tabs-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 28px;
    flex-wrap: wrap;
}

/* 贡献路径页面 Tab（浅色背景标签样式） */
.oaii-contribution-tabs {
    display: inline-flex;
    gap: 6px;
    background: #e8edf5;
    padding: 6px;
    border-radius: 10px;
}
.oaii-contribution-tabs button {
    padding: 12px 26px;
    color: #64748b;
    font-weight: 600;
    font-size: 15px;
    border-radius: 8px;
    border: none;
    background: transparent;
    cursor: pointer;
    transition: background .2s, color .2s;
    font-family: inherit;
}
.oaii-contribution-tabs button.active {
    background: var(--oaii-primary);
    color: #fff;
    box-shadow: 0 2px 8px rgba(16,58,151,.25);
}
.oaii-contribution-tabs button:hover:not(.active) {
    background: rgba(16,58,151,.08);
    color: var(--oaii-primary);
}

.oaii-contribution-detail-link {
    font-size: 14px;
    color: var(--oaii-primary);
    text-decoration: none;
    font-weight: 500;
    white-space: nowrap;
}
.oaii-contribution-detail-link:hover {
    text-decoration: underline;
}

/* Tab 内容面板 */
.oaii-contribution-view {
    display: none;
}
.oaii-contribution-view-desc {
    font-size: 14px;
    line-height: 1.7;
    color: var(--oaii-text);
    margin-bottom: 24px;
}
.oaii-contribution-view-desc strong {
    color: var(--oaii-primary);
    font-weight: 700;
}

/* 技术规范贡献流程表格 */
.oaii-process-table-wrap {
    overflow-x: auto;
}

/* 贡献流程图片 */
.oaii-contribution-flow-img {
    margin: 24px 0;
    text-align: center;
}
.oaii-contribution-flow-img img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}
@media (max-width: 768px) {
    .oaii-contribution-flow-img {
        margin: 16px 0;
    }
    .oaii-contribution-flow-img img {
        border-radius: 6px;
    }
}
.oaii-process-table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid var(--oaii-border);
    background: #fff;
    min-width: 720px;
}
.oaii-process-table thead th {
    background: #eef2f7;
    padding: 14px 16px;
    font-size: 14px;
    font-weight: 600;
    color: var(--oaii-text);
    border: 1px solid var(--oaii-border);
    text-align: center;
}
.oaii-process-table tbody th,
.oaii-process-table tbody td {
    border: 1px solid var(--oaii-border);
    padding: 18px 16px;
    text-align: center;
    vertical-align: middle;
}
.oaii-process-table tbody th.oaii-process-row-head {
    background: #f8fafc;
    font-size: 14px;
    font-weight: 600;
    color: var(--oaii-text);
    width: 110px;
}
.oaii-process-cell-title {
    font-size: 13px;
    font-weight: 500;
    color: var(--oaii-text);
    line-height: 1.5;
    margin-bottom: 6px;
}
.oaii-process-cell-sub {
    font-size: 12px;
    color: var(--oaii-text-light);
    line-height: 1.5;
}
.oaii-process-arrow {
    display: inline-flex;
    color: #94a3b8;
    margin-top: 4px;
}
.oaii-process-cell-end {
    background: #fff;
    font-size: 13px;
    color: var(--oaii-text-light);
    line-height: 1.6;
}

/* 技术规范贡献流程表格 v2（截图样式） */
.oaii-process-table-v2 {
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
    border: none;
}
.oaii-process-table-v2 thead th {
    background: #e2e8f0;
    padding: 16px 12px;
    font-size: 14px;
    font-weight: 600;
    color: var(--oaii-text);
    border: 1px solid #d1d5db;
}
.oaii-process-table-v2 .oaii-process-corner {
    background: #e2e8f0;
    border: 1px solid #d1d5db;
}
.oaii-process-table-v2 tbody th,
.oaii-process-table-v2 tbody td {
    border: 1px solid var(--oaii-border);
    padding: 22px 16px;
    text-align: center;
    vertical-align: middle;
}
.oaii-process-table-v2 tbody th.oaii-process-row-head {
    background: #f8fafc;
    font-size: 14px;
    font-weight: 600;
    color: var(--oaii-text);
    width: 110px;
}
.oaii-process-table-v2 .oaii-process-cell-title {
    font-size: 14px;
    font-weight: 500;
    color: var(--oaii-text);
    line-height: 1.6;
    margin-bottom: 4px;
}
.oaii-process-table-v2 .oaii-process-cell-sub {
    font-size: 13px;
    color: var(--oaii-text-light);
    line-height: 1.5;
}
.oaii-process-table-v2 .oaii-process-arrow {
    display: block;
    color: #94a3b8;
    margin-top: 12px;
}
.oaii-process-table-v2 .oaii-process-cell-end {
    background: #fff;
    font-size: 13px;
    color: var(--oaii-text-light);
    line-height: 1.7;
    text-align: center;
    vertical-align: middle;
    width: 160px;
}

/* 团体标准贡献 */
.oaii-standard-intro {
    margin-bottom: 32px;
}
.oaii-standard-intro-title {
    font-size: 16px;
    font-weight: 700;
    color: var(--oaii-primary);
    margin-bottom: 14px;
}
.oaii-standard-intro-list {
    list-style: none;
    padding: 0;
    margin: 0 0 16px;
}
.oaii-standard-intro-list li {
    position: relative;
    padding-left: 18px;
    font-size: 14px;
    line-height: 1.7;
    color: var(--oaii-text);
    margin-bottom: 10px;
}
.oaii-standard-intro-list li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 9px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--oaii-primary);
}
.oaii-standard-note {
    font-size: 13px;
    color: var(--oaii-text-light);
    line-height: 1.6;
}
.oaii-contribution-subtitle {
    font-size: 18px;
    font-weight: 700;
    color: var(--oaii-primary);
    margin-bottom: 18px;
}

/* 制度下载列表 */
.oaii-standard-docs-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}
.oaii-standard-doc-item {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: 8px;
    padding: 16px 20px;
    text-decoration: none;
    color: var(--oaii-text);
    transition: all .2s;
}
.oaii-standard-doc-item:hover {
    border-color: var(--oaii-primary);
    box-shadow: 0 4px 12px rgba(16,58,151,.08);
}
.oaii-standard-doc-item h4 {
    flex: 1;
    font-size: 14px;
    font-weight: 600;
    margin: 0;
    line-height: 1.4;
}
.oaii-standard-doc-download {
    flex-shrink: 0;
    color: var(--oaii-primary);
}
.oaii-standard-doc-download-btn {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 13px;
    font-weight: 600;
    padding: 6px 14px;
    border-radius: 6px;
    white-space: nowrap;
    text-decoration: none;
    transition: all .2s;
}
.oaii-standard-doc-download-btn:not(.oaii-login-trigger-dl) {
    background: var(--oaii-primary);
    color: #fff;
    border: 1px solid var(--oaii-primary);
}
.oaii-standard-doc-download-btn:not(.oaii-login-trigger-dl):hover {
    background: var(--oaii-primary-dark, #0a2766);
}
.oaii-standard-doc-download-btn.oaii-login-trigger-dl {
    background: #fff;
    color: var(--oaii-primary);
    border: 1px solid var(--oaii-primary);
    cursor: pointer;
}
.oaii-standard-doc-download-btn.oaii-login-trigger-dl:hover {
    background: var(--oaii-primary);
    color: #fff;
}
.oaii-standard-doc-no-download {
    flex-shrink: 0;
    font-size: 12px;
    color: var(--oaii-text-light);
    white-space: nowrap;
}
.oaii-standard-docs-empty {
    background: #f8fafc;
    border: 1px dashed var(--oaii-border);
    border-radius: 8px;
    padding: 24px;
    text-align: center;
    color: var(--oaii-text-light);
    font-size: 13px;
}

/* 规范编写资源 */
.oaii-writing-resources-v2 {
    background: #f4f7fb;
    border-top: 1px solid #e2e8f0;
}
.oaii-writing-resources-v2 .oaii-subtitle {
    margin-bottom: 24px;
}
.oaii-writing-resources-list {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 32px;
}
.oaii-writing-resource-item {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    color: var(--oaii-text);
    text-decoration: none;
    padding: 6px 0;
    transition: color .2s;
}
.oaii-writing-resource-item:hover {
    color: var(--oaii-primary);
}
.oaii-writing-resource-title {
    white-space: nowrap;
}
.oaii-writing-resource-link {
    color: var(--oaii-primary);
    font-weight: 500;
}
.oaii-writing-resource-link:hover {
    text-decoration: underline;
}
.oaii-writing-resources-tip {
    margin-top: 16px;
    font-size: 12px;
    color: var(--oaii-text-light);
}

/* 响应式 */
@media (max-width: 768px) {
    .oaii-contribution-info-card {
        padding: 24px;
    }
    .oaii-contribution-tabs-header {
        flex-direction: column;
        align-items: flex-start;
    }
    .oaii-contribution-tabs {
        padding: 4px;
    }
    .oaii-contribution-tabs button {
        padding: 10px 16px;
        font-size: 14px;
    }
    .oaii-standard-docs-list {
        grid-template-columns: 1fr;
    }
    .oaii-writing-resources-list {
        flex-direction: column;
        gap: 8px;
    }
    .oaii-writing-resource-item {
        white-space: normal;
    }
}

/* ========== 返回顶部悬浮按钮 ========== */
.oaii-back-to-top {
    position: fixed;
    right: 20px;
    bottom: 32px;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--oaii-primary);
    color: #fff;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 16px rgba(16,58,151,.35);
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: opacity .3s, visibility .3s, transform .3s, background .2s, box-shadow .2s;
    z-index: 900;
    padding: 0;
}
.oaii-back-to-top.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.oaii-back-to-top:hover {
    background: var(--oaii-primary-dark);
    box-shadow: 0 6px 20px rgba(16,58,151,.45);
    transform: translateY(-3px);
}
.oaii-back-to-top:active {
    transform: translateY(-1px);
}
.oaii-back-to-top:focus-visible {
    outline: 2px solid var(--oaii-primary);
    outline-offset: 3px;
}
@media (max-width: 768px) {
    .oaii-back-to-top {
        right: 20px;
        bottom: 20px;
        width: 42px;
        height: 42px;
    }
    .oaii-back-to-top svg {
        width: 18px;
        height: 18px;
    }
}

/* ========== 贡献成果页面 ========== */
.oaii-contrib-results { padding-top: 48px; }

/* 双栏布局 */
.oaii-contrib-layout {
    display: grid;
    grid-template-columns: 240px 1fr;
    gap: 32px;
    align-items: start;
}

/* ========== 筛选选项（方形单选框，右侧布局） ========== */
.ocm-filter-radio-item {
    margin-bottom: 0;
    line-height: 1;
}
.ocm-filter-radio-row {
    display: flex;
    align-items: center;
    gap: 6px;
}
.ocm-filter-radio-label {
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border-radius: 4px;
    cursor: pointer;
    transition: background .15s;
    user-select: none;
}
.ocm-filter-radio-label:hover {
    background: rgba(16,58,151,.04);
}
.ocm-filter-radio {
    /* 隐藏原生 radio，绘制方形方框 */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 16px;
    height: 16px;
    border: 2px solid #c5d3e8;
    border-radius: 2px;
    flex-shrink: 0;
    cursor: pointer;
    position: relative;
    transition: border-color .15s, background .15s;
    margin: 0;
    /* 在 flex 容器中通过 order 排到右边 */
    order: 2;
}
.ocm-filter-radio:checked {
    border-color: var(--oaii-primary);
    background: var(--oaii-primary);
}
.ocm-filter-radio:checked::after {
    content: '';
    position: absolute;
    top: 1px;
    left: 4px;
    width: 4px;
    height: 8px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
.ocm-filter-radio-text {
    font-size: 13px;
    color: #666;
    transition: color .15s;
    line-height: 1.5;
    flex: 1;
    min-width: 0;
}
.ocm-filter-radio-count {
    color: #999;
    font-size: 12px;
    margin-left: 2px;
}
.ocm-filter-radio:checked ~ .ocm-filter-radio-text {
    color: var(--oaii-primary);
    font-weight: 600;
}
/* 选中时数量也跟着变色 */
.ocm-filter-radio:checked ~ .ocm-filter-radio-text .ocm-filter-radio-count {
    color: var(--oaii-primary);
}

/* ========== 项目层级树（+/−展开/折叠） ========== */
.ocm-tree-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    flex-shrink: 0;
    cursor: pointer;
    color: var(--oaii-primary);
    border-radius: 3px;
    user-select: none;
    transition: background .15s;
}
.ocm-tree-toggle:hover {
    background: rgba(16,58,151,.08);
}
.ocm-tree-icon {
    font-size: 16px;
    line-height: 1;
    font-weight: 600;
    font-family: "PingFang SC", "Microsoft YaHei", Helvetica, Arial, sans-serif;
}
.ocm-tree-children {
    list-style: none;
    margin: 0;
    padding: 0;
}
.ocm-tree-sublist {
    margin: 0;
    padding: 0;
}

/* 父级项目粗体 */
.ocm-filter-radio-parent > .ocm-filter-radio-row > .ocm-filter-radio-label > .ocm-filter-radio-text {
    font-weight: 600;
    color: #444;
}
/* 子级项目缩进 */
.ocm-filter-radio-child .ocm-filter-radio-text {
    font-size: 12px;
}

/* ========== 分组标题 + / − 折叠按钮 ========== */
.oaii-contrib-filter-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    font-size: 14px;
    font-weight: 700;
    color: #444;
    margin: 0 0 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid #eee;
    text-transform: none;
    letter-spacing: 0;
    cursor: default;
}
.oaii-contrib-filter-title-text {
    flex: 1;
    min-width: 0;
}
.ocm-section-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    cursor: pointer;
    color: var(--oaii-primary);
    border-radius: 3px;
    user-select: none;
    transition: background .15s;
    margin-left: auto;
}
.ocm-section-toggle:hover {
    background: rgba(16,58,151,.08);
}

/* ========== 旧样式兼容（仍被其他地方使用） ========== */
.oaii-contrib-sidebar {
    position: sticky;
    top: 100px;
}
.oaii-contrib-sidebar-inner {
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 20px 0;
}
.oaii-contrib-filter-section {
    padding: 0 20px;
    margin-bottom: 20px;
}
.oaii-contrib-filter-section:last-child {
    margin-bottom: 0;
    border-bottom: none;
}
.oaii-contrib-filter-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.oaii-contrib-filter-list li {
    /* margin handled by radio items */
}
/* 旧链接样式保留兼容（不再使用但保留不破坏） */
.ocm-filter-link {
    display: block;
    padding: 5px 12px 5px 14px;
    font-size: 13px;
    color: #666;
    text-decoration: none;
    border-radius: 4px;
    border-left: 3px solid transparent;
    transition: all .15s;
    cursor: pointer;
    line-height: 1.6;
}
.ocm-filter-link:hover {
    color: var(--oaii-primary);
    border-left-color: #c5d3e8;
}
.ocm-filter-link.active {
    color: var(--oaii-primary);
    font-weight: 600;
    border-left-color: var(--oaii-primary);
    background: rgba(16,58,151,.04);
}

/* 贡献者列表滚动 */
.oaii-contrib-filter-scroll {
    max-height: 320px;
    overflow-y: auto;
    padding-right: 4px;
}
.oaii-contrib-filter-scroll::-webkit-scrollbar {
    width: 5px;
}
.oaii-contrib-filter-scroll::-webkit-scrollbar-track {
    background: transparent;
}
.oaii-contrib-filter-scroll::-webkit-scrollbar-thumb {
    background: #c5d3e8;
    border-radius: 10px;
}
.oaii-contrib-filter-scroll::-webkit-scrollbar-thumb:hover {
    background: #a0b4d0;
}

/* ========== 右侧内容区 ========== */
.oaii-contrib-main {
    min-width: 0;
}

/* 搜索框 */
.oaii-contrib-search-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 24px;
    flex-wrap: wrap;
}
.oaii-contrib-search-box {
    position: relative;
    flex: 1;
    max-width: 420px;
}
.oaii-contrib-search-icon {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--oaii-text-light);
    pointer-events: none;
}
.oaii-contrib-search-input {
    width: 100%;
    padding: 9px 14px 9px 38px;
    border: 1px solid var(--oaii-border);
    border-radius: 8px;
    font-size: 14px;
    outline: none;
    transition: border-color .2s, box-shadow .2s;
    background: #fff;
}
.oaii-contrib-search-input:focus {
    border-color: var(--oaii-primary);
    box-shadow: 0 0 0 3px rgba(16,58,151,.08);
}
.oaii-contrib-result-count {
    font-size: 13px;
    color: var(--oaii-text-light);
    white-space: nowrap;
}
.oaii-contrib-result-count span {
    font-weight: 700;
    color: var(--oaii-primary);
    font-size: 15px;
}

/* 加载提示 */
.oaii-contrib-loading {
    text-align: center;
    padding: 20px 0;
    color: var(--oaii-text-light);
    font-size: 14px;
}
.oaii-contrib-loading-spinner {
    display: inline-block;
    width: 16px;
    height: 16px;
    border: 2px solid var(--oaii-border);
    border-top-color: var(--oaii-primary);
    border-radius: 50%;
    animation: ocmSpin .6s linear infinite;
    vertical-align: middle;
    margin-right: 6px;
}
@keyframes ocmSpin {
    to { transform: rotate(360deg); }
}

/* 贡献成果列表 */
.oaii-contrib-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* 单条贡献成果卡片 */
.oaii-contrib-card {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 16px 24px;
    align-items: start;
    background: #fff;
    border: 1px solid var(--oaii-border);
    border-radius: var(--oaii-radius);
    padding: 24px 28px;
    transition: box-shadow .25s, border-color .25s;
}
.oaii-contrib-card:hover {
    box-shadow: 0 4px 20px rgba(0,0,0,.08);
    border-color: #c5d3e8;
}

/* 左侧信息区 */
.oaii-contrib-card-info {
    grid-column: 1;
    min-width: 0;
}
.oaii-contrib-card-title {
    font-size: 18px;
    font-weight: 700;
    color: var(--oaii-text);
    margin: 0 0 14px;
    line-height: 1.4;
}

/* Meta 字段 */
.oaii-contrib-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 24px;
    margin-bottom: 14px;
}
.oaii-contrib-meta-item {
    display: inline-flex;
    align-items: baseline;
    gap: 6px;
}
.oaii-contrib-meta-label {
    font-size: 13px;
    color: var(--oaii-text-light);
    white-space: nowrap;
}
.oaii-contrib-meta-value {
    font-size: 14px;
   /* font-weight: 600;*/
    color: var(--oaii-text);
}

/* 贡献者文字列表 */
.oaii-contrib-contributors {
    font-size: 14px;
    line-height: 1.8;
    color: var(--oaii-text-light);
    margin-bottom: 12px;
}
.oaii-contrib-contributors-label {
    /*font-weight: 700;*/
    color: var(--oaii-text);
}

/* 下载按钮（在贡献者下方） */
.oaii-contrib-card-download {
    display: flex;
    justify-content: flex-start;
    margin-top: 4px;
}

/* 右侧 LOGO 区 */
.oaii-contrib-card-logos {
    grid-column: 2;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    max-width: 320px;
    align-content: flex-start;
}
.oaii-contrib-logo-item {
    width: 72px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--oaii-border);
    border-radius: 6px;
    padding: 4px;
    background: #fff;
    transition: box-shadow .2s;
}
.oaii-contrib-logo-item:hover {
    box-shadow: 0 2px 8px rgba(0,0,0,.08);
}
.oaii-contrib-logo-item img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

/* 空状态 */
.oaii-contrib-empty {
    text-align: center;
    padding: 60px 0;
    color: var(--oaii-text-light);
    font-size: 15px;
}

/* 响应式 */
@media (max-width: 992px) {
    .oaii-contrib-layout {
        grid-template-columns: 1fr;
    }
    .oaii-contrib-sidebar {
        position: static;
    }
    .oaii-contrib-sidebar-inner {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 0 20px;
        padding: 16px;
    }
    .oaii-contrib-filter-section {
        padding: 0;
        margin-bottom: 12px;
    }
}
@media (max-width: 768px) {
    .oaii-contrib-card {
        grid-template-columns: 1fr;
        padding: 20px;
    }
    .oaii-contrib-card-logos {
        grid-column: 1;
        max-width: 100%;
    }
    .oaii-contrib-card-meta {
        gap: 6px 16px;
    }
    .oaii-contrib-sidebar-inner {
        grid-template-columns: 1fr;
    }
    .oaii-contrib-search-bar {
        flex-direction: column;
        align-items: stretch;
    }
    .oaii-contrib-search-box {
        max-width: 100%;
    }
}

/* ============================================================
   首页弹出窗
   ============================================================ */
.oaii-popup-mask {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.45);
    z-index: 99998;
    opacity: 0;
    pointer-events: none;
    transition: opacity .3s ease;
}
.oaii-popup-mask.is-visible {
    opacity: 1;
    pointer-events: auto;
}

.oaii-popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(.92);
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0,0,0,.2);
    z-index: 99999;
    max-width: 92vw;
    width: 520px;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
    transition: all .35s cubic-bezier(.34,1.56,.64,1);
}
.oaii-popup.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translate(-50%, -50%) scale(1);
}

.oaii-popup-close {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 32px;
    height: 32px;
    border: none;
    background: rgba(0,0,0,.08);
    border-radius: 50%;
    font-size: 22px;
    line-height: 1;
    color: #555;
    cursor: pointer;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .2s, color .2s;
}
.oaii-popup-close:hover {
    background: rgba(0,0,0,.15);
    color: #222;
}

.oaii-popup-image {
    width: 100%;
    aspect-ratio: 16/9;
    overflow: hidden;
    background: #f0f0f0;
}
.oaii-popup-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.oaii-popup-body {
    padding: 24px 28px 28px;
}
.oaii-popup-title {
    font-size: 20px;
    font-weight: 700;
    color: #1e293b;
    margin: 0 0 12px;
    line-height: 1.4;
}
.oaii-popup-content {
    font-size: 14px;
    color: #64748b;
    line-height: 1.7;
    margin-bottom: 20px;
}
.oaii-popup-content p {
    margin: 0 0 8px;
}
.oaii-popup-content p:last-child {
    margin-bottom: 0;
}
.oaii-popup-actions {
    text-align: center;
}
.oaii-popup-actions .oaii-btn {
    display: inline-flex;
    padding: 10px 32px;
    font-size: 14px;
}

@media (max-width: 640px) {
    .oaii-popup {
        width: 90vw;
        border-radius: 12px;
    }
    .oaii-popup-body {
        padding: 18px 20px 22px;
    }
    .oaii-popup-title {
        font-size: 17px;
    }
}

/* ============================================================
   右侧悬浮菜单
   ============================================================ */
.oaii-float-menu {
    position: fixed;
    right: 20px;
    bottom: 100px;
    z-index: 900;
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: flex-end;
    transition: bottom .3s ease;
}
.oaii-float-menu.is-bot {
    bottom: 170px;
}

.oaii-float-btn {
    display: inline-flex;
    align-items: center;
    height: 48px;
    padding: 0 14px;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 24px;
    box-shadow: 0 4px 16px rgba(0,0,0,.08);
    color: #64748b;
    text-decoration: none;
    transition: all .3s cubic-bezier(.4,0,.2,1);
    overflow: hidden;
    white-space: nowrap;
    cursor: pointer;
}
.oaii-float-btn:hover {
    background: var(--oaii-primary);
    border-color: var(--oaii-primary);
    color: #fff;
    box-shadow: 0 6px 20px rgba(16,58,151,.25);
    padding: 0 18px;
}

.oaii-float-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 20px;
    height: 20px;
}

.oaii-float-label {
    display: inline-block;
    max-width: 0;
    opacity: 0;
    overflow: hidden;
    margin-left: 0;
    font-size: 13px;
    font-weight: 500;
    line-height: 1;
    transition: all .3s cubic-bezier(.4,0,.2,1);
}
.oaii-float-btn:hover .oaii-float-label {
    max-width: 140px;
    opacity: 1;
    margin-left: 8px;
}

@media (max-width: 768px) {
    .oaii-float-menu {
        right: 12px;
        bottom: 80px;
        gap: 6px;
    }
    .oaii-float-btn {
        height: 42px;
        padding: 0 12px;
        border-radius: 21px;
    }
    .oaii-float-btn:hover {
        padding: 0 15px;
    }
    .oaii-float-icon {
        width: 18px;
        height: 18px;
    }
    .oaii-float-label {
        font-size: 12px;
    }
    .oaii-float-btn:hover .oaii-float-label {
        max-width: 120px;
    }
}

/* ============================================================
   FAQ 常见问题页
   ============================================================ */

/* FAQ 整体布局 */
.oaii-faq-layout {
    display: grid;
    grid-template-columns: 240px 1fr;
    gap: 40px;
    align-items: flex-start;
}

/* ---- 左侧章节导航 ---- */
.oaii-faq-sidebar {
    position: sticky;
    top: 100px;
}

.oaii-faq-nav {
    display: flex;
    flex-direction: column;
    gap: 4px;
    background: #fff;
    border-radius: 12px;
    padding: 8px;
    box-shadow: 0 1px 4px rgba(0,0,0,.06);
    border: 1px solid #e8ecf1;
}

.oaii-faq-nav-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border-radius: 8px;
    text-decoration: none;
    color: #4a5568;
    font-size: 14px;
    font-weight: 500;
    transition: all .2s ease;
    cursor: pointer;
    position: relative;
}

.oaii-faq-nav-item:hover {
    background: #f0f4ff;
    color: #005fcd;
}

.oaii-faq-nav-item.active {
    background: #005fcd;
    color: #fff;
    box-shadow: 0 2px 8px rgba(16,58,151,.25);
}

.oaii-faq-nav-item.active .oaii-faq-nav-icon svg {
    stroke: #fff;
}

.oaii-faq-nav-icon {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
}

.oaii-faq-nav-icon svg {
    stroke: currentColor;
}

.oaii-faq-nav-text {
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.oaii-faq-nav-count {
    flex-shrink: 0;
    min-width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 600;
    border-radius: 6px;
    background: #e8ecf1;
    color: #718096;
    padding: 0 6px;
    transition: all .2s ease;
}

.oaii-faq-nav-item.active .oaii-faq-nav-count {
    background: rgba(255,255,255,.25);
    color: #fff;
}

/* ---- 右侧内容 ---- */
.oaii-faq-content {
    min-width: 0;
}

.oaii-faq-panel {
    display: none;
}

.oaii-faq-panel.active {
    display: block;
}

.oaii-faq-section-title {
    font-size: 22px;
    font-weight: 700;
    color: #1a202c;
    margin: 0 0 24px;
    padding-bottom: 12px;
    border-bottom: 2px solid #005fcd;
}

/* FAQ 项（details/summary 手风琴） */
.oaii-faq-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.oaii-faq-item {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    overflow: hidden;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.oaii-faq-item[open] {
    border-color: #c5d4f0;
    box-shadow: 0 2px 12px rgba(16,58,151,.08);
}

.oaii-faq-question {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px 18px;
    cursor: pointer;
    list-style: none;
    user-select: none;
    transition: background .15s ease;
}

.oaii-faq-question::-webkit-details-marker {
    display: none;
}

.oaii-faq-question:hover {
    background: #f7f9fc;
}

.oaii-faq-q-icon {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #005fcd;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    border-radius: 6px;
    line-height: 1;
}

.oaii-faq-q-text {
    flex: 1;
    font-size: 15px;
    font-weight: 600;
    color: #2d3748;
    line-height: 1.5;
    padding-top: 3px;
}

.oaii-faq-arrow {
    flex-shrink: 0;
    color: #a0aec0;
    transition: transform .25s ease;
    padding-top: 5px;
}

.oaii-faq-item[open] .oaii-faq-arrow {
    transform: rotate(180deg);
    color: #005fcd;
}

/* 答案区域 */
.oaii-faq-answer {
    display: flex;
    gap: 12px;
    padding: 0 18px 18px;
}

.oaii-faq-a-icon {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e8f0fe;
    color: #005fcd;
    font-size: 13px;
    font-weight: 700;
    border-radius: 6px;
    line-height: 1;
}

.oaii-faq-a-text {
    flex: 1;
    font-size: 14px;
    color: #4a5568;
    line-height: 1.75;
}

.oaii-faq-a-text p {
    margin: 0 0 10px;
}

.oaii-faq-a-text p:last-child {
    margin-bottom: 0;
}

.oaii-faq-a-text ul,
.oaii-faq-a-text ol {
    margin: 6px 0 10px;
    padding-left: 20px;
}

.oaii-faq-a-text ul li,
.oaii-faq-a-text ol li {
    margin-bottom: 4px;
    line-height: 1.65;
}

.oaii-faq-a-text a {
    color: #005fcd;
    text-decoration: none;
    font-weight: 500;
}

.oaii-faq-a-text a:hover {
    text-decoration: underline;
}

/* FAQ 表格 */
.oaii-faq-table {
    width: 100%;
    border-collapse: collapse;
    margin: 8px 0 14px;
    font-size: 13px;
}

.oaii-faq-table th {
    background: #f0f4ff;
    color: #005fcd;
    font-weight: 600;
    padding: 10px 14px;
    text-align: left;
    border-bottom: 2px solid #c5d4f0;
    white-space: nowrap;
}

.oaii-faq-table td {
    padding: 10px 14px;
    border-bottom: 1px solid #e2e8f0;
    color: #4a5568;
    line-height: 1.6;
}

.oaii-faq-table tr:last-child td {
    border-bottom: none;
}

/* 发展历程时间线 */
.oaii-faq-timeline {
    list-style: none !important;
    padding-left: 0 !important;
    margin: 8px 0 !important;
}

.oaii-faq-timeline li {
    position: relative;
    padding-left: 20px !important;
    margin-bottom: 8px !important;
    border-left: 2px solid #e2e8f0;
}

.oaii-faq-timeline li::before {
    content: '';
    position: absolute;
    left: -5px;
    top: 6px;
    width: 8px;
    height: 8px;
    background: #005fcd;
    border-radius: 50%;
}

.oaii-faq-timeline li strong {
    color: #005fcd;
}

/* 底部联系提示 */
.oaii-faq-footer-tip {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-top: 32px;
    padding: 18px 20px;
    background: #f0f4ff;
    border-radius: 10px;
    border: 1px solid #c5d4f0;
}

.oaii-faq-footer-tip .oaii-faq-tip-icon {
    flex-shrink: 0;
    color: #005fcd;
    padding-top: 2px;
}

.oaii-faq-footer-tip p {
    margin: 0;
    font-size: 14px;
    color: #4a5568;
    line-height: 1.6;
}

.oaii-faq-footer-tip a {
    color: #005fcd;
    font-weight: 500;
    text-decoration: none;
}

.oaii-faq-footer-tip a:hover {
    text-decoration: underline;
}

/* ---- 响应式 ---- */
@media (max-width: 860px) {
    .oaii-faq-layout {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .oaii-faq-sidebar {
        position: static;
        top: auto;
    }

    .oaii-faq-nav {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 4px;
        padding: 6px;
    }

    .oaii-faq-nav-item {
        flex-direction: row;
        align-items: center;
        gap: 6px;
        padding: 8px 12px;
        font-size: 13px;
        white-space: nowrap;
        flex: 1 1 calc(33.333% - 4px);
        min-width: 0;
    }

    .oaii-faq-nav-icon {
        width: 16px;
        height: 16px;
    }

    .oaii-faq-nav-icon svg {
        width: 16px;
        height: 16px;
    }

    .oaii-faq-nav-count {
        font-size: 10px;
        min-width: 18px;
        height: 18px;
    }

    .oaii-faq-section-title {
        font-size: 18px;
    }

    .oaii-faq-question {
        padding: 14px 15px;
    }

    .oaii-faq-q-text {
        font-size: 14px;
    }

    .oaii-faq-answer {
        flex-direction: column;
        gap: 8px;
    }
}

@media (max-width: 480px) {
    .oaii-faq-nav-item {
        flex: 1 1 calc(50% - 4px);
        padding: 8px 10px;
        font-size: 12px;
    }
    .oaii-faq-nav-text {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

/* ============================================
   全局移动端增强修复
   统一边距 / 防溢出 / 表单 / 内容换行
   ============================================ */

/* 统一左右等宽边距（与 .oaii-container 一致） */
@media (max-width: 480px) {
    .oaii-header-inner { padding: 0 16px; }
    .oaii-footer-inner { padding: 0 16px; }
    .oaii-section { padding: 40px 0; }
}

/* 弹窗 / 模态框 移动端防溢出 */
@media (max-width: 768px) {
    .oaii-modal {
        max-width: calc(100vw - 32px) !important;
        padding: 20px 16px;
    }
    .oaii-popup {
        max-width: calc(100vw - 32px) !important;
    }
    .oaii-user-dropdown {
        width: calc(100vw - 32px);
        max-width: 260px;
    }
}

/* 表单元素移动端适配 */
@media (max-width: 768px) {
    .oaii-filter-bar {
        flex-direction: column;
        align-items: stretch;
    }
    .oaii-filter-bar select,
    .oaii-filter-bar input {
        width: 100%;
        max-width: 100%;
    }
    .oaii-form-row input,
    .oaii-form-row select,
    .oaii-form-row textarea {
        max-width: 100%;
    }
}

/* 文章内容区移动端防护：图片/预格式/嵌入 */
@media (max-width: 768px) {
    .oaii-article-content img,
    .oaii-article-content video,
    .oaii-article-content iframe {
        max-width: 100%;
        height: auto;
    }
    .oaii-article-content pre {
        overflow-x: auto;
        max-width: 100%;
    }
    .oaii-article-content ul,
    .oaii-article-content ol {
        padding-left: 1.2em;
    }
}

/* 分享栏 / 文章导航 移动端纵向堆叠 */
@media (max-width: 480px) {
    .oaii-share-bar {
        flex-wrap: wrap;
        gap: 8px;
    }
    .oaii-post-nav {
        flex-direction: column;
        gap: 12px;
    }
    .oaii-post-nav-item {
        min-width: 0;
        width: 100%;
    }
}

/* 首页弹窗宽度限制（覆盖后台设置的固定像素值） */
@media (max-width: 768px) {
    .oaii-popup[style*="width"] {
        width: calc(100vw - 32px) !important;
        max-width: 400px;
    }
}

/* 确保 flex 容器在窄屏可换行 */
@media (max-width: 768px) {
    .oaii-spec-highlights,
    .oaii-event-meta,
    .oaii-article-cats {
        flex-wrap: wrap;
    }
}

/* ============================================================
   技术规范贡献 - 流程图排版
   参考 openaiinfra.gccorg.com/lists/51.html 布局
============================================================ */

/* 外层容器 */
.oaii-spec-flow-container {
    border: 1px solid #d0d7e6;
    border-radius: 8px;
    overflow: hidden;
    margin: 24px 0;
    background: #fff;
}

/* 表头 */
.oaii-spec-flow-header {
    display: grid;
    grid-template-columns: 80px repeat(4, 1fr);
}
.oaii-spec-flow-corner {
    background: #005fcd;
}
.oaii-spec-flow-header-cell {
    background: #005fcd;
    color: #fff;
    text-align: center;
    padding: 14px 8px;
    font-size: 15px;
    font-weight: 600;
    border-left: 1px solid rgba(255,255,255,0.2);
}

/* 流程图主体 */
.oaii-spec-flow-body {
    display: grid;
    grid-template-columns: 80px 1fr;
    border-top: 1px solid #d0d7e6;
}
.oaii-spec-flow-sidebar {
    display: flex;
    flex-direction: column;
    border-right: 1px solid #d0d7e6;
}
.oaii-spec-flow-row-label {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f5f8ff;
    color: #005fcd;
    font-size: 14px;
    font-weight: 600;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    letter-spacing: 4px;
    border-bottom: 1px solid #d0d7e6;
    min-height: 120px;
}
.oaii-spec-flow-row-label:last-child {
    border-bottom: none;
}
.oaii-spec-flow-image-wrap {
    background: #fff;
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.oaii-spec-flow-image-wrap img {
    width: 100%;
    height: auto;
    display: block;
    max-width: 100%;
}

/* 要点内容 */
.oaii-spec-flow-points {
    display: grid;
    grid-template-columns: 48px 1fr;
    border-top: 1px solid #d0d7e6;
}
.oaii-spec-flow-points-label {
    background: #f0f4ff;
    color: #005fcd;
    font-size: 14px;
    font-weight: 600;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    letter-spacing: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-right: 1px solid #d0d7e6;
}
.oaii-spec-flow-points-content {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}
.oaii-spec-flow-point-col {
    padding: 20px 24px;
    border-right: 1px solid #e8ecf5;
}
.oaii-spec-flow-point-col:last-child {
    border-right: none;
}
.oaii-spec-flow-point-col h4 {
    color: #005fcd;
    font-size: 14px;
    font-weight: 600;
    margin: 0 0 12px;
}
.oaii-spec-flow-point-col ol {
    margin: 0;
    padding-left: 18px;
    font-size: 13px;
    line-height: 1.8;
    color: #444;
}
.oaii-spec-flow-point-col li {
    margin-bottom: 8px;
}
.oaii-spec-flow-point-col li:last-child {
    margin-bottom: 0;
}

/* 平板端适配 */
@media (max-width: 768px) {
    .oaii-spec-flow-header {
        grid-template-columns: 60px repeat(4, 1fr);
    }
    .oaii-spec-flow-header-cell {
        font-size: 13px;
        padding: 12px 4px;
    }
    .oaii-spec-flow-body {
        grid-template-columns: 60px 1fr;
    }
    .oaii-spec-flow-row-label {
        font-size: 12px;
        letter-spacing: 2px;
        min-height: 100px;
    }
    .oaii-spec-flow-image-wrap {
        padding: 14px;
    }
    .oaii-spec-flow-points {
        grid-template-columns: 40px 1fr;
    }
    .oaii-spec-flow-points-label {
        font-size: 12px;
        letter-spacing: 2px;
    }
    .oaii-spec-flow-points-content {
        grid-template-columns: 1fr;
    }
    .oaii-spec-flow-point-col {
        border-right: none;
        border-bottom: 1px solid #e8ecf5;
        padding: 16px 20px;
    }
    .oaii-spec-flow-point-col:last-child {
        border-bottom: none;
    }
}

/* 手机端适配 */
@media (max-width: 480px) {
    .oaii-spec-flow-header {
        grid-template-columns: 44px repeat(4, 1fr);
    }
    .oaii-spec-flow-header-cell {
        font-size: 11px;
        padding: 10px 2px;
    }
    .oaii-spec-flow-body {
        grid-template-columns: 44px 1fr;
    }
    .oaii-spec-flow-row-label {
        font-size: 11px;
        letter-spacing: 1px;
        min-height: 80px;
    }
    .oaii-spec-flow-image-wrap {
        padding: 10px;
    }
    .oaii-spec-flow-points {
        grid-template-columns: 36px 1fr;
    }
    .oaii-spec-flow-points-label {
        font-size: 11px;
        letter-spacing: 1px;
    }
    .oaii-spec-flow-point-col {
        padding: 12px 16px;
    }
    .oaii-spec-flow-point-col h4 {
        font-size: 13px;
    }
    .oaii-spec-flow-point-col ol {
        font-size: 12px;
    }
}

/* ============================================================
   团体标准贡献流程图（参考 lists/54.html 排版）
   ============================================================ */

/* 外层容器 */
.oaii-standard-flow-container {
    border: 1px solid #d0d7e6;
    border-radius: 8px;
    overflow: hidden;
    margin: 24px 0;
    background: #fff;
}

/* 表头 — 5列 */
.oaii-standard-flow-header {
    display: grid;
    grid-template-columns: 80px repeat(5, 1fr);
}
.oaii-standard-flow-corner {
    background: #005fcd;
}
.oaii-standard-flow-header-cell {
    background: #005fcd;
    color: #fff;
    text-align: center;
    padding: 14px 8px;
    font-size: 15px;
    font-weight: 600;
    border-left: 1px solid rgba(255,255,255,0.2);
}

/* 流程图主体 */
.oaii-standard-flow-body {
    display: grid;
    grid-template-columns: 80px 1fr;
    border-top: 1px solid #d0d7e6;
}
.oaii-standard-flow-sidebar {
    display: flex;
    flex-direction: column;
    border-right: 1px solid #d0d7e6;
}
.oaii-standard-flow-row-label {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f5f8ff;
    color: #005fcd;
    font-size: 14px;
    font-weight: 600;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    letter-spacing: 4px;
    min-height: 120px;
}
.oaii-standard-flow-image-wrap {
    background: #fff;
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.oaii-standard-flow-image-wrap img {
    width: 100%;
    height: auto;
    display: block;
    max-width: 100%;
}

/* 要点内容 — 4列 */
.oaii-standard-flow-points {
    display: grid;
    grid-template-columns: 80px 1fr;
    border-top: 1px solid #d0d7e6;
}
.oaii-standard-flow-points-label {
    background: #f0f4ff;
    color: #005fcd;
    font-size: 14px;
    font-weight: 600;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    letter-spacing: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-right: 1px solid #d0d7e6;
}
.oaii-standard-flow-points-content {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}
.oaii-standard-flow-point-col {
    padding: 20px 24px;
    border-right: 1px solid #e8ecf5;
}
.oaii-standard-flow-point-col:last-child {
    border-right: none;
}
.oaii-standard-flow-point-col p {
    margin: 0;
    font-size: 13px;
    line-height: 1.8;
    color: #444;
}

/* 平板端适配 */
@media (max-width: 768px) {
    .oaii-standard-flow-header {
        grid-template-columns: 60px repeat(5, 1fr);
    }
    .oaii-standard-flow-header-cell {
        font-size: 12px;
        padding: 12px 4px;
    }
    .oaii-standard-flow-body {
        grid-template-columns: 60px 1fr;
    }
    .oaii-standard-flow-row-label {
        font-size: 12px;
        letter-spacing: 2px;
        min-height: 100px;
    }
    .oaii-standard-flow-image-wrap {
        padding: 14px;
    }
    .oaii-standard-flow-points {
        grid-template-columns: 60px 1fr;
    }
    .oaii-standard-flow-points-label {
        font-size: 12px;
        letter-spacing: 2px;
    }
    .oaii-standard-flow-points-content {
        grid-template-columns: repeat(2, 1fr);
    }
    .oaii-standard-flow-point-col {
        border-right: none;
        border-bottom: 1px solid #e8ecf5;
        padding: 16px 20px;
    }
    .oaii-standard-flow-point-col:nth-child(odd) {
        border-right: 1px solid #e8ecf5;
    }
    .oaii-standard-flow-point-col:nth-last-child(-n+2) {
        border-bottom: none;
    }
}

/* 手机端适配 */
@media (max-width: 480px) {
    .oaii-standard-flow-header {
        grid-template-columns: 44px repeat(5, 1fr);
    }
    .oaii-standard-flow-header-cell {
        font-size: 10px;
        padding: 10px 2px;
    }
    .oaii-standard-flow-body {
        grid-template-columns: 44px 1fr;
    }
    .oaii-standard-flow-row-label {
        font-size: 11px;
        letter-spacing: 1px;
        min-height: 80px;
    }
    .oaii-standard-flow-image-wrap {
        padding: 10px;
    }
    .oaii-standard-flow-points {
        grid-template-columns: 44px 1fr;
    }
    .oaii-standard-flow-points-label {
        font-size: 11px;
        letter-spacing: 1px;
    }
    .oaii-standard-flow-points-content {
        grid-template-columns: 1fr;
    }
    .oaii-standard-flow-point-col {
        padding: 12px 16px;
        border-right: none;
    }
    .oaii-standard-flow-point-col:nth-child(odd) {
        border-right: none;
    }
    .oaii-standard-flow-point-col:nth-last-child(-n+2) {
        border-bottom: 1px solid #e8ecf5;
    }
    .oaii-standard-flow-point-col:last-child {
        border-bottom: none;
    }
    .oaii-standard-flow-point-col p {
        font-size: 12px;
    }
}
