/* ============================================================
   Batata 全局主样式 — 全站共用
   配色体系：主色 #8eb446 | 深绿 #336600 | 中绿 #669900
   ============================================================ */

/* ===== 全局重置 ===== */
*, *::before, *::after { box-sizing: border-box; }
html, body { height: 100%; margin: 0; padding: 0; }
a:focus, a:active, button:focus, button:active { outline: none; }
.btn:focus, .btn:active:focus, .btn.active:focus,
.btn:active, .btn.active { outline: none; box-shadow: none; }
html { overscroll-behavior-y: contain; scroll-behavior: smooth; }
body {
    font-family: 'Raleway', sans-serif;
    background: #fff;
    overflow-x: hidden;
}

/* ===== 全局链接 ===== */
a { color: #8eb446; text-decoration: none; transition: color 0.3s; }
a:hover { color: #000000; text-decoration: none; }

/* ===== 按钮悬停修正（覆盖 style.css 黑色背景） ===== */
.w3-button a:hover, .w3l-button a:hover {
    background: #8eb446; color: #fff;
}

/* ===== 全局图片 ===== */
img { max-width: 100%; height: auto; }

/* ===== 通用工具类 ===== */
.batata { padding: 40px 0; background: #fff; }
.image-rounded-style {
    position: relative; display: inline-block;
    border-radius: 50%; overflow: hidden;
    line-height: 0;
}
.image-rounded-style img {
    display: block; border-radius: 50%;
    max-width: 100%; height: auto;
}
.image-rounded-style::before {
    content: ''; position: absolute; inset: 0; z-index: 1;
    border-radius: 50%; pointer-events: none;
    box-shadow: inset 0 0 0 8px rgba(255,255,255,0.6), 0 1px 2px rgba(0,0,0,0.3);
}

.app-wrapper {
    display: flex;
    height: 100vh;
    overflow: hidden;
}

/* ===== 侧边栏 ===== */
.doc-sidebar {
    width: 280px;
    min-width: 280px;
    background: #8eb446;
    color: rgba(255,255,255,0.9);
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    overflow-x: hidden;
    z-index: 100;
    transition: transform 0.3s ease;
}

.doc-sidebar .sidebar-header {
    padding: 18px 16px;
    border-bottom: 1px solid rgba(255,255,255,0.2);
    text-align: center;
    flex-shrink: 0;
}
.doc-sidebar .sidebar-header h4 {
    margin: 0;
    color: #fff;
    font-size: 1.1rem;
    font-weight: 600;
}
.doc-sidebar .sidebar-header small {
    color: rgba(255,255,255,0.65);
    display: block;
    margin-top: 2px;
}

.sidebar-search {
    padding: 8px 12px;
    border-bottom: 1px solid rgba(255,255,255,0.15);
    flex-shrink: 0;
}
.sidebar-search .input-group-addon {
    background: rgba(255,255,255,0.2);
    border: 1px solid rgba(255,255,255,0.25);
    border-left: none;
    color: rgba(255,255,255,0.7);
}
.sidebar-search .form-control {
    background: rgba(255,255,255,0.2);
    border: 1px solid rgba(255,255,255,0.25);
    color: #fff;
    font-size: 0.82rem;
}
.sidebar-search .form-control:focus {
    background: rgba(255,255,255,0.3);
    border-color: #336600;
    box-shadow: none;
    color: #fff;
}
.sidebar-search .form-control::placeholder {
    color: rgba(255,255,255,0.5);
}
.sidebar-search .btn-refresh {
    width: 100%;
    margin-top: 6px;
    background: rgba(255,255,255,0.15);
    border: 1px solid rgba(255,255,255,0.2);
    color: rgba(255,255,255,0.8);
    font-size: 0.78rem;
}
.sidebar-search .btn-refresh:hover {
    background: rgba(255,255,255,0.25);
    color: #fff;
}

.sidebar-admin {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 10px 2px;
}
.sidebar-admin .admin-avatar {
    width: 96px;
    height: 96px;
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,0.5);
    object-fit: cover;
    cursor: pointer;
    transition: border-color 0.2s;
}
.sidebar-admin .admin-avatar:hover {
    border-color: #fff;
}
.sidebar-admin .admin-info {
    text-align: center;
    margin-top: 6px;
    line-height: 1.3;
}
.sidebar-admin .admin-name {
    color: #fff;
    font-size: 0.78rem;
    font-weight: 500;
}
.sidebar-admin .admin-logout {
    color: rgba(255,255,255,0.65);
    font-size: 0.7rem;
    text-decoration: none;
}
.sidebar-admin .admin-logout:hover {
    color: #fff;
}
.sidebar-admin .admin-login {
    color: rgba(255,255,255,0.8);
    font-size: 0.78rem;
    text-decoration: none;
    text-align: center;
    display: block;
    margin-top: 4px;
}
.sidebar-admin .admin-login:hover {
    color: #fff;
}
.sidebar-admin .admin-avatar-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.2);
    border: 2px solid rgba(255,255,255,0.3);
    cursor: default;
}
.sidebar-admin .admin-avatar-placeholder i {
    font-size: 36px;
    color: rgba(255,255,255,0.5);
}

/* ===== 侧边栏导航 ===== */
.sidebar-nav { flex: 1; padding: 6px 0; }
.sidebar-nav .nav-group { margin: 0; }

/* 一级导航项 */
.nav-item-top {
    display: flex;
    align-items: center;
    padding: 10px 14px;
    cursor: pointer;
    color: rgba(255,255,255,0.85);
    font-size: 1rem;
    font-weight: 500;
    transition: all 0.15s;
    border-left: 3px solid transparent;
    user-select: none;
}
.nav-item-top:hover {
    background: rgba(255,255,255,0.15);
    color: #fff;
    border-left-color: #fff;
}
.nav-item-top.active {
    background: rgba(255,255,255,0.2);
    color: #fff;
    border-left-color: #fff;
}
.nav-item-top i.fa-fw {
    width: 18px;
    text-align: center;
    margin-right: 8px;
    font-size: 0.82rem;
}
.nav-item-top .arrow {
    margin-left: auto;
    font-size: 0.7rem;
    transition: transform 0.2s;
    color: rgba(255,255,255,0.5);
}
.nav-item-top.expanded .arrow {
    transform: rotate(90deg);
}

/* 子导航容器 */
.nav-children {
    display: none;
    background: rgba(0,0,0,0.08);
}
.nav-children.open { display: block; }

/* 二级专题标题 */
.nav-subject {
    padding: 6px 14px 6px 34px;
    font-size: 0.9rem;
    color: rgba(255,255,255,0.75);
    font-weight: 600;
    cursor: pointer;
    user-select: none;
}
.nav-subject:hover { color: #fff; }
.nav-subject .arrow {
    font-size: 0.65rem;
    margin-right: 4px;
    transition: transform 0.2s;
    display: inline-block;
}
.nav-subject.expanded .arrow {
    transform: rotate(90deg);
}

/* 三级文档标题 */
.nav-doc {
    display: block;
    padding: 5px 14px 5px 50px;
    font-size: 0.78rem;
    color: rgba(255,255,255,0.7);
    cursor: pointer;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-decoration: none;
    transition: all 0.12s;
}
.nav-doc:hover, .nav-doc.active {
    color: #fff;
    text-decoration: none;
    background: rgba(255,255,255,0.1);
}
.nav-doc .doc-icon {
    margin-right: 6px;
    color: rgba(255,255,255,0.45);
}
.nav-doc.active .doc-icon { color: #fff; }

/* 二级子导航项 */
.nav-sub-item {
    display: block;
    padding: 6px 14px 6px 34px;
    font-size: 0.85rem;
    color: rgba(255,255,255,0.7);
    cursor: pointer;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-decoration: none;
    transition: all 0.12s;
}
.nav-sub-item:hover, .nav-sub-item.active {
    color: #fff;
    text-decoration: none;
    background: rgba(255,255,255,0.1);
}
.nav-sub-item i {
    margin-right: 6px;
    width: 14px;
    text-align: center;
    font-size: 0.7rem;
}

.topic-children { display: none; }
.topic-children.open { display: block; }

/* 目录组标题 */
.nav-dir-label {
    padding: 6px 14px 6px 34px;
    font-size: 0.75rem;
    color: rgba(255,255,255,0.55);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.sidebar-footer {
    padding: 10px 14px;
    border-top: 1px solid rgba(255,255,255,0.15);
    font-size: 0.7rem;
    color: rgba(255,255,255,0.5);
    text-align: center;
    flex-shrink: 0;
}
.sidebar-footer a { color: #fff; font-weight: 500; }

/* ===== 主内容区 ===== */
.doc-main {
    flex: 1;
    overflow-y: auto;
    padding: 30px 35px;
    background: #fff;
}
.doc-main .welcome {
    text-align: center;
    padding: 80px 20px;
    color: #95a5a6;
}
.doc-main .welcome i {
    font-size: 3rem;
    display: block;
    margin-bottom: 15px;
    color: #8eb446;
}
.doc-main .welcome h3 { margin: 10px 0; color: #336600; }

/* 内容区 loading */
#content-loader {
    text-align: center;
    padding: 60px;
    color: #bdc3c7;
    display: none;
}
#content-loader img { width: 32px; }

/* ===== 内容展示 ===== */
#content-area .article-detail .article-title {
    color: #336600;
    margin-top: 0;
}
#content-area .article-body {
    line-height: 1.85;
    font-size: 0.95rem;
}
#content-area .article-body h1 { font-size: 1.4rem; margin: 1.1em 0 0.5em; }
#content-area .article-body h2 { font-size: 1.1rem; margin: 1em 0 0.4em; }
#content-area .article-body h3 { font-size: 1.05rem; margin: 0.9em 0 0.35em; }
#content-area .article-body h4 { font-size: 1rem; margin: 0.8em 0 0.3em; }
#content-area .article-body h5 { font-size: 0.95rem; margin: 0.7em 0 0.25em; }
#content-area .article-body h6 { font-size: 0.9rem; margin: 0.6em 0 0.2em; }
#content-area .article-body ul, #content-area .article-body ol { padding-left: 2em; margin: 0.5em 0; }
#content-area .article-body li { margin: 0.25em 0; }
#content-area .article-body img:not([width]):not(.img-left):not(.img-right):not(.img-center) { width: 60%; max-width: 100%; display: block; margin: 0 auto; }
.article-body img.img-left, .article-body img.img-right, .article-body img.img-center { width: auto; }
.markdown-body img:not([width]):not(.img-left):not(.img-right):not(.img-center) { width: 60%; max-width: 100%; display: block; margin: 0 auto; }
.markdown-body img.img-left, .markdown-body img.img-right, .markdown-body img.img-center { width: auto; }
#content-area .search-result-item { cursor: pointer; transition: background 0.15s; }
#content-area .search-result-item:hover { background: #f2f7ed; }

/* ===== 文档内 RSS 订阅组件 ===== */
.article-rss {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 16px;
    margin: 24px 0;
    border-radius: 4px;
    background: #e0e0e0;
}
.article-rss-label {
    font-size: 0.8rem;
    font-weight: 600;
    color: #888;
    white-space: nowrap;
    flex-shrink: 0;
}
.article-rss form {
    display: flex;
    gap: 6px;
    flex: 1;
}
.article-rss input[type="text"] {
    flex: 1;
    border: 1px solid #e0e0e0;
    border-radius: 3px;
    padding: 5px 10px;
    font-size: 0.82rem;
    color: #333;
    outline: none;
    transition: border-color 0.2s;
}
.article-rss input[type="text"]:focus {
    border-color: #8eb446;
}
.article-rss .btn1 {
    background: #8eb446;
    color: #fff;
    border: none;
    border-radius: 3px;
    padding: 5px 12px;
    font-size: 0.82rem;
    cursor: pointer;
    transition: background 0.2s;
    white-space: nowrap;
}
.article-rss .btn1:hover {
    background: #669900;
}

/* ===== 通用文章内容样式（跨页面使用） ===== */
.article-detail .article-title {
    color: #336600;
    margin-top: 0;
}
.article-body {
    line-height: 1.85;
    font-size: 0.95rem;
    color: #333;
    margin-top: 1.2em;
}
.article-body h1 { font-size: 1.4rem; margin: 1.1em 0 0.5em; }
.article-body h2 { font-size: 1.1rem; margin: 1em 0 0.4em; }
.article-body h3 { font-size: 1.05rem; margin: 0.9em 0 0.35em; }
.article-body h4 { font-size: 1rem; margin: 0.8em 0 0.3em; }
.article-body h5 { font-size: 0.95rem; margin: 0.7em 0 0.25em; }
.article-body h6 { font-size: 0.9rem; margin: 0.6em 0 0.2em; }
.article-body ul, .article-body ol { padding-left: 2em; margin: 0.5em 0; }
.article-body li { margin: 0.25em 0; }
.article-body img:not([width]):not(.img-left):not(.img-right):not(.img-center) { width: 60%; max-width: 100%; display: block; margin: 0 auto; }

/* ---- 表格：有边框（默认） ---- */
.article-body table { border-collapse: collapse; width: 100%; margin: 1em 0; font-size: 0.95em; }
.article-body table th, .article-body table td { border: 1px solid #ddd; padding: 6px 12px; }
.article-body table th { background: #f6f8fa; font-weight: 600; }
.article-body tbody tr:nth-child(even) td { background: #f8f9fa; }

/* ---- 表格：无边框（GFM 风格，仅水平线） ---- */
.article-body table.table-borderless td,
.article-body table.table-borderless th {
    padding: 7px 12px;
    border-bottom: 1px solid #dee2e6;
    border-left: none;
    border-right: none;
    border-top: none;
}
.article-body table.table-borderless thead th {
    border-bottom: 2px solid #adb5bd;
    font-weight: 600;
    border-left: none;
    border-right: none;
    border-top: none;
}
.article-body table.table-borderless tbody tr:nth-child(even) td {
    background: #f8f9fa;
}
.article-body blockquote { border-left: 4px solid #dfe2e5; padding-left: 1em; color: #6a737d; margin: 1em 0; }
.article-body pre { background-color: #f6f8fa; padding: 14px; border-radius: 6px; overflow-x: auto; }
.article-body code { background-color: rgba(27,31,35,0.05); padding: 2px 5px; border-radius: 3px; font-size: 0.9em; }
.article-body pre[class*=language-] { background-color: #2d2d2d; }
.article-body code[class*=language-],
.article-body pre[class*=language-] { color: #ddd; }
.article-body .token.comment,
.article-body .token.prolog,
.article-body .token.doctype,
.article-body .token.cdata { color: #b0b0b0; }
.article-body .token.punctuation { color: #ddd; }
.article-body pre code { padding: 0; border-radius: 0; font-size: inherit; background-color: transparent; }

/* ===== Markdown 页面 Prism 代码高亮（GitHub 亮色主题）===== */
.markdown-body { background: transparent !important; }
.markdown-body h4 { font-size: 1.1em; }
.markdown-body h5 { font-size: 1.05em; }
.markdown-body h6 { font-size: 1em; }
.markdown-body h1, .markdown-body h2, .markdown-body h3,
.markdown-body h4, .markdown-body h5, .markdown-body h6 {
    scroll-margin-top: 150px;
}
.markdown-body pre { background-color: #f6f8fa; color: #24292e; }
.markdown-body pre[class*=language-] { background-color: #f6f8fa; }
.markdown-body code[class*=language-],
.markdown-body pre[class*=language-] { color: #24292e; }
.markdown-body .token.comment,
.markdown-body .token.prolog,
.markdown-body .token.doctype,
.markdown-body .token.cdata { color: #6a737d; }
.markdown-body .token.punctuation { color: #24292e; }
.markdown-body .token.property,
.markdown-body .token.tag,
.markdown-body .token.boolean,
.markdown-body .token.number,
.markdown-body .token.constant,
.markdown-body .token.symbol,
.markdown-body .token.deleted { color: #005cc5; }
.markdown-body .token.selector,
.markdown-body .token.attr-name,
.markdown-body .token.string,
.markdown-body .token.char,
.markdown-body .token.builtin,
.markdown-body .token.inserted { color: #032f62; }
.markdown-body .token.operator,
.markdown-body .token.entity,
.markdown-body .token.url,
.markdown-body .token.atrule,
.markdown-body .token.attr-value,
.markdown-body .token.keyword { color: #d73a49; }
.markdown-body .token.function,
.markdown-body .token.class-name { color: #6f42c1; }
.markdown-body .token.regex,
.markdown-body .token.important,
.markdown-body .token.variable { color: #e36209; }
.markdown-body pre code { padding: 0; border-radius: 0; font-size: inherit; background-color: transparent; color: inherit; }
.markdown-body :not(pre) > code { color: #8b0000; background: rgba(139,0,0,0.05); padding: 2px 5px; border-radius: 3px; font-size: 0.9em; }

/* ===== Markdown 样式切换器 ===== */
.style-switcher {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 15px 16px;
    padding: 8px 15px;
    border-bottom: 1px solid #eee;
}
.style-switcher-label {
    font-size: 0.82rem;
    color: #888;
}
.style-switcher-toggle {
    display: flex;
    border: 1px solid #d0d0d0;
    border-radius: 4px;
    overflow: hidden;
}
.style-switcher-toggle button {
    padding: 5px 16px;
    font-size: 0.8rem;
    border: none;
    background: #fff;
    color: #666;
    cursor: pointer;
    transition: all 0.15s;
}
.style-switcher-toggle button.active {
    background: #8eb446;
    color: #fff;
}
.style-switcher-toggle button:not(.active):hover {
    background: #f0f5e8;
}

/* ===== Markdown 顶部图标 ===== */
.markdown-icon {
    display: inline-block;
    font-family: Arial, sans-serif;
    font-weight: 700;
    font-size: 18px;
    color: #2f2f2f;
    line-height: 1;
    vertical-align: middle;
    transition: color 0.5s;
}
.markdown-icon:hover { color: #3b5998; }

/* ===== 移动端汉堡按钮 ===== */
.sidebar-toggle {
    display: none;
    position: fixed;
    top: 10px;
    left: 10px;
    z-index: 200;
    background: #8eb446;
    color: #fff;
    border: none;
    width: 38px;
    height: 38px;
    border-radius: 6px;
    font-size: 1.1rem;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0,0,0,0.25);
}
.sidebar-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.45);
    z-index: 99;
}
.sidebar-overlay.show { display: block; }

/* ===== 章节导航 ===== */
.chapter-nav { margin-top: 40px; padding-top: 20px; border-top: 1px solid #eee; background: transparent; }
.chapter-nav-inner { display: flex; justify-content: space-between; align-items: stretch; gap: 12px; }
.chapter-nav .btn,
.chapter-nav .nav-spacer {
    flex: 0 1 auto; width: calc(50% - 6px); min-width: 0; box-sizing: border-box;
}
.chapter-nav .btn {
    white-space: normal;
    padding: 12px 18px; border: 1px solid #e0e0e0; background: #fafafa;
    color: #336600; transition: all 0.15s;
}
.chapter-nav .btn:hover { background: #f0f5e8; border-color: #8eb446; }
.chapter-nav .chapter-prev { text-align: left; }
.chapter-nav .chapter-next { text-align: right; margin-left: auto; }
.chapter-nav .btn .nav-label { font-size: 0.78rem; font-weight: 600; display: block; }
.chapter-nav .btn .nav-title { font-size: 0.82rem; font-weight: normal; opacity: 0.7; display: block; margin-top: 2px; overflow: hidden; text-overflow: ellipsis; }
.chapter-nav .btn .fa-chevron-left, .chapter-nav .btn .fa-chevron-right { font-size: 0.85rem; }
.chapter-nav .btn.disabled { opacity: 0.3; cursor: default; pointer-events: none; }

/* ===== Bootstrap 按钮绿色覆盖 ===== */
.btn-primary { background-color: #8eb446; border-color: #669900; }
.btn-primary:hover, .btn-primary:focus, .btn-primary:active { background-color: #669900; border-color: #336600; }
.btn-info { background-color: #669900; border-color: #336600; }
.btn-info:hover, .btn-info:focus, .btn-info:active { background-color: #336600; border-color: #264d00; }

/* ===== 首页 Welcome 区域 ===== */
.news, .welcome, .services { padding: 30px 0 1em; }
.welcome { padding-bottom: 1.8em; }
.services { padding-top: 1.8em; }
.w3-welcome-grids, .agileits-services { margin: 1em 0 0 0; }
.w3-welcome-left h5 { font-size: 1.15em; }
.w3-welcome-left p { font-size: 0.95em; color: #555; }

/* 板块标题与内容间距收紧 */
.news .w3l-heading,
.welcome .w3l-heading,
.services .w3l-heading,
.news .agileits-about-top-heading,
.welcome .agileits-about-top-heading,
.services .agileits-about-top-heading { margin-bottom: 1.5em; padding-bottom: 0.8em; }

.w3l-heading p,
.agileits-about-top-heading p { text-align: center; }

/* ===== 首页新闻网格 ===== */
.wthree-news-grids img { max-width: 100%; height: auto; display: block; }
.wthree-news-grids .w3-agile-news-info { margin-left: 0; text-align: left; }
.wthree-news-grids .w3-agile-news-info a { font-size: 1.8em; }
.wthree-news-grids .date-grid .time { margin-left: 2em; }

/* ===== AI 要闻播报 ===== */
.news-broadcast { padding: 4em 0; }
.broadcast-row { display: flex; gap: 2rem; align-items: flex-start; margin-top: 4em; padding: 0 15px; }
.broadcast-video-col { flex: 0 0 calc(50% - 1rem); max-width: calc(50% - 1rem); }
.broadcast-list-col { flex: 0 0 calc(50% - 1rem); max-width: calc(50% - 1rem); min-width: 0; }
.broadcast-video-wrap { position: relative; aspect-ratio: 16 / 10; }

.broadcast-video-wrap video,
.broadcast-video-wrap .broadcast-placeholder,
.broadcast-video-wrap .broadcast-placeholder img {
    width: 100%; height: 100%; object-fit: cover;
    border-radius: 6px;
}
.broadcast-placeholder { position: relative; }
.broadcast-placeholder-overlay {
    position: absolute; top: 0; left: 0; right: 0; bottom: 0;
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    background: rgba(0,0,0,0.35); border-radius: 6px;
}
.broadcast-list-header {
    font-size: 1.1rem; font-weight: 700; color: #555;
    padding-bottom: 12px; margin-bottom: 12px;
    border-bottom: 2px solid #8eb446;
    display: flex; align-items: center; gap: 8px;
}
.broadcast-list-header i { color: #8eb446; }
.broadcast-news-item {
    display: flex; align-items: flex-start; gap: 12px;
    padding: 12px; margin-bottom: 6px;
    border-radius: 8px; background: #fff;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
    transition: background 0.2s;
}
.broadcast-news-item:hover { background: #f2f7ed; }
.broadcast-news-num {
    flex-shrink: 0; width: 28px; height: 28px;
    display: flex; align-items: center; justify-content: center;
    background: #8eb446; color: #fff; font-weight: 700;
    font-size: 0.8rem; border-radius: 6px;
}
.broadcast-news-empty .broadcast-news-num { background: #ccc; }
.broadcast-news-text h5 {
    font-size: 0.95rem; font-weight: 600; margin: 0 0 4px 0;
    line-height: 1.35;
}
.broadcast-news-text h5 a { color: #333; text-decoration: none; }
.broadcast-news-text h5 a:hover { color: #8eb446; }
.broadcast-news-text p {
    font-size: 0.82rem; color: #888; margin: 0; line-height: 1.4;
}
.broadcast-news-empty .broadcast-news-text h5,
.broadcast-news-empty .broadcast-news-text p { color: #bbb; }

@media (max-width: 768px) {
    .broadcast-row { flex-direction: column; }
    .broadcast-video-col,
    .broadcast-list-col { flex: none; max-width: 100%; width: 100%; }
}

@media (max-width: 991px) {
    .wthree-news-grids .w3-agile-news-info a { font-size: 1.5em; }
}
@media (max-width: 600px) {
    .wthree-news-grids .col-md-5 { text-align: center; }
    .wthree-news-grids .col-md-5 img { max-width: 80%; margin: 0 auto; }
    .wthree-news-grids .w3-agile-news-info a { font-size: 1.2em; }
}

/* ===== 首页 AI 要闻紧凑卡片 ===== */
.ai-news-row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	margin-top: 1.4em;
	padding: 0 15px;
}
.ai-card {
	background: #fff;
	border-radius: 6px;
	overflow: hidden;
	box-shadow: 0 1px 6px rgba(0,0,0,0.07);
	transition: box-shadow 0.2s;
}
.ai-card:hover { box-shadow: 0 3px 14px rgba(0,0,0,0.10); }
.ai-card-img {
	display: block;
	width: 100%;
	aspect-ratio: 16/9;
	overflow: hidden;
	background: #eef1f5;
}
.ai-card-img img {
	width: 100%; height: 100%;
	object-fit: cover;
	transition: transform 0.35s;
}
.ai-card:hover .ai-card-img img { transform: scale(1.04); }

.ai-card-text { padding: 12px 14px 14px; }
.ai-card-date {
	font-size: 0.72em; color: #aaa;
	display: block; margin-bottom: 4px;
}
.ai-card-text h4 {
	font-size: 0.92em; font-weight: 700;
	line-height: 1.45; margin: 0 0 6px;
}
.ai-card-text h4 a { color: #333; text-decoration: none; }
.ai-card-text h4 a:hover { color: #8eb446; }
.ai-card-digest {
	font-size: 0.78em; color: #999;
	line-height: 1.55; margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
/* 空占位 */
.ai-card-empty { opacity: 0.45; pointer-events: none; }
.ai-card-empty .ai-card-img img { filter: grayscale(0.4); }

@media (max-width: 768px) {
	.ai-news-row { grid-template-columns: 1fr; gap: 14px; }
	.ai-card-img { aspect-ratio: 2/1; }
	.ai-card-text { padding: 10px 12px 12px; }
	.ai-card-text h4 { font-size: 0.95em; }
}


/* ===== 下拉刷新指示器 ===== */
.ptr--ptr {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 50px;
    text-align: center;
    line-height: 50px;
    font-size: 0.85rem;
    color: #8eb446;
    background: #f5f7fa;
    overflow: hidden;
    z-index: 9999;
}
.ptr--icon { margin-right: 6px; font-size: 1.1rem; transition: transform 0.3s; }
.ptr--refresh .ptr--icon { transform: rotate(180deg); }
.ptr--reset .ptr--icon { transition: none; }

/* ===== 响应式 ===== */
@media (max-width: 768px) {
    .sidebar-toggle { display: block; }
    .doc-sidebar {
        position: fixed;
        top: 0; left: 0;
        height: 100vh;
        transform: translateX(-100%);
    }
    .doc-sidebar.open { transform: translateX(0); }
    .doc-main { padding: 62px 14px 20px; }
    .doc-main .welcome { padding: 40px 10px; }
    .nav-item-top { font-size: 0.95rem; padding: 10px 12px; }
    .nav-sub-item, .nav-doc { font-size: 0.76rem; }

    #content-area .markdown-content h1,
    #content-area .article-body h1 { font-size: 1.2rem; }
    #content-area .markdown-content h2,
    #content-area .article-body h2 { font-size: 1.05rem; }
    #content-area .markdown-content h3,
    #content-area .article-body h3 { font-size: 1rem; }
    #content-area .markdown-content h4,
    #content-area .article-body h4 { font-size: 0.95rem; }
}

@media (max-width: 480px) {
    .doc-main { padding: 56px 8px 12px; }
    .doc-main .welcome i { font-size: 2.2rem; }
    .doc-main .welcome h3 { font-size: 1rem; }

    .chapter-nav { margin-top: 24px; padding-top: 12px; }
    .chapter-nav-inner { gap: 8px; }
    .chapter-nav .btn { padding: 10px 12px; min-width: 0; }
    .chapter-nav .btn .nav-label { font-size: 0.75rem; }
    .chapter-nav .btn .nav-title { font-size: 0.72rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
}

@media (max-width: 360px) {
    .chapter-nav-inner { gap: 4px; }
    .chapter-nav .btn { padding: 8px 8px; }
}

/* ===== 大事记时间线（全局通用）===== */
.timeline-container {
    width: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding-top: 0;
    padding-bottom: 0;
}
.timeline-container .timeline-row { flex-shrink: 2; flex-grow: 2; }
.timeline-container .timeline-video-wrap {
    position: relative; padding-bottom: 56.25%; padding-top: 25px; height: 0;
}
.timeline-container .timeline-video-wrap iframe {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
}
.timeline-col {
    align-self: stretch; display: flex; flex-direction: column;
}
.timeline-overlay { flex: 1; display: flex; flex-direction: column; }
.timeline-overlay > .timeline-desc { flex: 1; display: flex; flex-direction: column; }
.timeline-line {
    flex: 1; min-height: 80px; width: 4px;
    margin: 0 auto; background: #dadada; border-radius: 2px;
}

/* ===== 团队成员职务（圆形图片下方）===== */
.team-grid { overflow: visible; }
.team-position { text-align: center; font-size: 0.95rem; font-weight: 600; color: #333; margin: 10px 0 6px; }
@media (max-width: 767px) {
    .team-grid { overflow: visible; }
    .team-position { font-size: 0.85rem; margin: 8px 0 4px; white-space: normal; word-break: keep-all; }
}

/* ===== 通用内容卡片（软件/书籍/商品等）===== */
.batata-card {
    background: #fff; border-radius: 10px; overflow: hidden;
    box-shadow: 0 2px 16px rgba(0,0,0,0.07);
    transition: transform 0.25s, box-shadow 0.25s;
    display: flex; flex-direction: column;
}
.batata-card:hover { transform: translateY(-5px); box-shadow: 0 10px 30px rgba(0,0,0,0.12); }
.batata-card-img {
    width: 100%; object-fit: cover; display: block;
    background: linear-gradient(135deg, #e8f0d8 0%, #c8dba0 100%);
    border-bottom: 1px solid #eee; cursor: pointer;
    aspect-ratio: 16/10;
}
.batata-card-img-wrap {
    position: relative; width: 100%; overflow: hidden; background: #f9fafb;
    aspect-ratio: 16/10; display: flex; align-items: center; justify-content: center;
}
.batata-card-img-placeholder {
    width: 100%; aspect-ratio: 16/10; display: flex; align-items: center; justify-content: center;
    background: linear-gradient(135deg, #e8f0d8 0%, #f5f8ef 100%);
    border-bottom: 1px solid #eee; color: #8eb446; font-size: 2.8rem;
}
.batata-card-body { padding: 16px 18px 18px; flex: 1; display: flex; flex-direction: column; }
.batata-card-title { font-size: 1.05em; font-weight: 700; color: #333; margin-bottom: 4px; }
.batata-card-sub { font-size: 0.82em; color: #888; }
.batata-card-category { font-size: 0.72em; color: #8eb446; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 4px; }
.batata-card-name { font-size: 1.15em; font-weight: 700; color: #333; margin-bottom: 6px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.batata-card-tagline { font-size: 0.85em; color: #888; line-height: 1.5; flex: 1; margin-bottom: 10px; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; min-height: calc(0.85em * 1.5 * 2); }
.batata-card-platforms { display: flex; gap: 6px; margin-bottom: 10px; flex-wrap: wrap; }
.batata-platform-tag { display: inline-block; padding: 2px 10px; border-radius: 12px; font-size: 0.7em; font-weight: 600; background: #f0f4e8; color: #669900; border: 1px solid #d8e4c0; }
.batata-card-bottom { display: flex; align-items: center; justify-content: space-between; padding-top: 12px; border-top: 1px solid #f0f0f0; }
.batata-card-price { font-size: 1.25em; font-weight: 800; color: #d48400; }
.batata-card-price small { font-size: 0.55em; font-weight: 400; color: #999; }
.batata-card-actions { display: flex; gap: 8px; }
.batata-card .badge-free { display: inline-block; background: #e8f5e9; color: #2e7d32; font-size: 0.75em; padding: 2px 10px; border-radius: 10px; font-weight: 600; margin-top: 6px; }
.batata-card .badge-vip { display: inline-block; background: #fff3e0; color: #e65100; font-size: 0.75em; padding: 2px 10px; border-radius: 10px; font-weight: 600; margin-top: 6px; }
.batata-card-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 24px; padding: 0 15px; }
@media (max-width: 991px) { .batata-card-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 767px) { .batata-card-grid { grid-template-columns: 1fr; } }

/* ===== 卡片按钮 ===== */
.batata-btn { padding: 6px 18px; border-radius: 18px; font-size: 0.82em; font-weight: 600; cursor: pointer; border: none; transition: all 0.2s; display: inline-block; }
.batata-btn-detail { background: #fff; color: #8eb446; border: 1.5px solid #8eb446; }
.batata-btn-detail:hover { background: #f0f5e8; color: #669900; }
.batata-btn-buy { background: #8eb446; color: #fff; }
.batata-btn-buy:hover { background: #7a9a3c; color: #fff; }
.batata-btn-disabled { background: #ddd; color: #999; cursor: not-allowed; }
.batata-btn-disabled:hover { background: #ddd; color: #999; }

/* ===== 图片灯箱（软件/商品用）===== */
#imgLightbox { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.88); z-index: 9999; align-items: center; justify-content: center; cursor: zoom-out; }
#imgLightbox.active { display: flex; }
#imgLightbox img { max-width: 92vw; max-height: 92vh; object-fit: contain; border-radius: 6px; box-shadow: 0 8px 40px rgba(0,0,0,0.5); }

/* ===== 详情弹窗 ===== */
.batata-modal-overlay { display: none; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.55); z-index: 9999; align-items: center; justify-content: center; }
.batata-modal-overlay.active { display: flex; }
.batata-modal { background: #fff; border-radius: 12px; width: 90%; max-width: 720px; max-height: 85vh; overflow-y: auto; padding: 32px 28px 24px; box-shadow: 0 20px 60px rgba(0,0,0,0.3); position: relative; }
.batata-modal-close { position: absolute; top: 12px; right: 18px; font-size: 26px; color: #999; cursor: pointer; background: none; border: none; line-height: 1; }
.batata-modal-close:hover { color: #333; }
.batata-modal-img { width: 100%; max-height: 280px; object-fit: cover; border-radius: 8px; margin-bottom: 18px; background: #f5f7fa; }
.batata-modal-name { font-size: 1.4em; font-weight: 700; color: #333; margin-bottom: 4px; }
.batata-modal-version { font-size: 0.8em; color: #aaa; margin-left: 8px; }
.batata-modal-tagline { font-size: 0.95em; color: #888; margin-bottom: 16px; }
.batata-modal-section { margin-bottom: 16px; }
.batata-modal-section h4 { font-size: 0.95em; font-weight: 700; color: #555; margin-bottom: 8px; padding-bottom: 6px; border-bottom: 1px solid #eee; }
.batata-modal-desc { font-size: 0.9em; color: #666; line-height: 1.7; }
.batata-modal-features { list-style: none; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
@media (max-width: 480px) { .batata-modal-features { grid-template-columns: 1fr; } }
.batata-modal-features li { font-size: 0.88em; color: #555; padding: 4px 0; }
.batata-modal-features li::before { content: "✓ "; color: #8eb446; font-weight: 700; }
.batata-modal-footer { display: flex; align-items: center; justify-content: space-between; padding-top: 16px; margin-top: 8px; border-top: 1px solid #eee; }
.batata-modal-price { font-size: 1.5em; font-weight: 800; color: #d48400; }
.batata-modal-price small { font-size: 0.5em; font-weight: 400; color: #999; }

/* ===== 书籍卡片（在线作品） ===== */
.book-card { background: #fff; border-radius: 8px; box-shadow: 0 2px 12px rgba(0,0,0,0.08); overflow: hidden; transition: transform 0.25s, box-shadow 0.25s; cursor: pointer; }
.book-card:hover { transform: translateY(-4px); box-shadow: 0 8px 24px rgba(0,0,0,0.14); }
.book-card-img { width: 100%; aspect-ratio: 3/4; object-fit: cover; display: block; background: #eee; }
.book-card-body { padding: 12px 10px 10px; text-align: center; }
.book-card-title { font-size: 1.05em; font-weight: 700; color: #333; margin-bottom: 4px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.book-card-author { font-size: 0.82em; color: #888; margin-bottom: 8px; }
.book-card .badge-free { display: inline-block; padding: 4px 16px; border-radius: 20px; font-size: 0.78em; font-weight: 600; color: #fff; background: #8eb446; }
.book-card .badge-vip { display: inline-block; padding: 4px 16px; border-radius: 20px; font-size: 0.78em; font-weight: 600; color: #fff; background: linear-gradient(135deg, #f0a500, #d48400); }
.book-card .badge-draft { display: inline-block; padding: 4px 16px; border-radius: 20px; font-size: 0.78em; font-weight: 600; color: #c62828; background: #ffebee; margin-right: 4px; }
.book-card .badge-serial { display: inline-block; padding: 4px 16px; border-radius: 20px; font-size: 0.78em; font-weight: 600; color: #1565c0; background: #e3f2fd; margin-right: 4px; }
.book-card .badge-finished { display: inline-block; padding: 4px 16px; border-radius: 20px; font-size: 0.78em; font-weight: 600; color: #2e7d32; background: #e8f5e9; margin-right: 4px; }
.book-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; padding: 0 15px; }
@media (max-width: 991px) { .book-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 767px) { .book-grid { grid-template-columns: 1fr; } }
@media (max-width: 768px) { .book-card-img { aspect-ratio: 2/3; } }

/* ===== 订阅方案弹窗 ===== */
.batata-modal-title { text-align: center; font-size: 1.25em; font-weight: 700; margin-bottom: 20px; color: #333; }
.plan-grid { display: flex; gap: 16px; flex-wrap: wrap; }
.plan-card { flex: 1; min-width: 180px; border: 2px solid #e0e0e0; border-radius: 10px; padding: 20px 16px; text-align: center; cursor: pointer; transition: border-color 0.2s, box-shadow 0.2s; }
.plan-card:hover { border-color: #8eb446; box-shadow: 0 4px 16px rgba(142,180,70,0.15); }
.plan-card.recommended { border-color: #8eb446; background: #f9fdf3; position: relative; }
.plan-card.recommended::before { content: "推荐"; position: absolute; top: -10px; left: 50%; transform: translateX(-50%); background: #8eb446; color: #fff; font-size: 0.72em; padding: 2px 12px; border-radius: 10px; }
.plan-name { font-size: 1em; font-weight: 700; color: #555; margin-bottom: 8px; }
.plan-price { font-size: 1.6em; font-weight: 800; color: #d48400; margin-bottom: 4px; }
.plan-price small { font-size: 0.55em; font-weight: 400; }
.plan-desc { font-size: 0.82em; color: #999; margin-bottom: 12px; }
.plan-btn { display: inline-block; padding: 8px 28px; border-radius: 20px; font-size: 0.88em; font-weight: 600; border: none; cursor: pointer; transition: background 0.2s; }
.plan-btn-green { background: #8eb446; color: #fff; }
.plan-btn-green:hover { background: #7a9a3c; }
.plan-btn-outline { background: #fff; color: #8eb446; border: 1.5px solid #8eb446; }
.plan-btn-outline:hover { background: #f0f5e8; }
.pay-tabs { display: flex; gap: 0; margin-bottom: 16px; border-bottom: 2px solid #e0e0e0; }
.pay-tab { flex: 1; text-align: center; padding: 8px 0; cursor: pointer; font-weight: 600; color: #999; transition: color 0.2s, border-color 0.2s; border-bottom: 2px solid transparent; margin-bottom: -2px; }
.pay-tab.active { color: #8eb446; border-bottom-color: #8eb446; }
@media (max-width: 768px) { .plan-grid { flex-direction: column; } }

/* ===== 商品卡片（第三方代卖） ===== */
.product-grid .batata-card { margin-bottom: 24px; }
.product-card { background: #fff; border-radius: 10px; box-shadow: 0 2px 16px rgba(0,0,0,0.07); overflow: hidden; margin-bottom: 28px; transition: transform 0.25s, box-shadow 0.25s; display: flex; flex-direction: column; height: 100%; }
.product-card:hover { transform: translateY(-5px); box-shadow: 0 10px 30px rgba(0,0,0,0.12); }
.product-img-wrap { position: relative; width: 100%; aspect-ratio: 16/10; overflow: hidden; background: #f9fafb; }
.product-img { width: 100%; height: 100%; object-fit: cover; display: block; cursor: pointer; }
.product-img-placeholder { width: 100%; aspect-ratio: 16/10; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #e8f0d8 0%, #f5f8ef 100%); border-bottom: 1px solid #eee; color: #8eb446; font-size: 2.8rem; }
.product-stock-badge { position: absolute; top: 10px; right: 10px; padding: 2px 10px; border-radius: 12px; font-size: 0.7em; font-weight: 700; color: #fff; }
.product-stock-badge.in { background: #8eb446; }
.product-stock-badge.out { background: #ccc; color: #999; }
.product-shipping-badge { position: absolute; top: 10px; left: 10px; padding: 2px 10px; border-radius: 12px; font-size: 0.7em; font-weight: 700; background: #d48400; color: #fff; }
.product-body { padding: 16px 18px 18px; flex: 1; display: flex; flex-direction: column; }
.product-category { font-size: 0.7em; color: #8eb446; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 4px; }
.product-name { font-size: 1.1em; font-weight: 700; color: #333; margin-bottom: 6px; }
.product-tagline { font-size: 0.85em; color: #888; line-height: 1.5; flex: 1; margin-bottom: 10px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.product-bottom { display: flex; align-items: center; justify-content: space-between; padding-top: 12px; border-top: 1px solid #f0f0f0; }
.product-price-row { display: flex; align-items: baseline; gap: 6px; }
.product-price { font-size: 1.3em; font-weight: 800; color: #d48400; }
.product-shipping { font-size: 0.75em; color: #999; }
.product-shipping.free { color: #8eb446; }
.product-actions { display: flex; gap: 8px; }
.btn-detail { padding: 6px 18px; border-radius: 18px; font-size: 0.82em; font-weight: 600; cursor: pointer; border: 1.5px solid #8eb446; background: #fff; color: #8eb446; transition: all 0.2s; }
.btn-detail:hover { background: #f0f5e8; color: #669900; }
.btn-buy { padding: 6px 18px; border-radius: 18px; font-size: 0.82em; font-weight: 600; cursor: pointer; border: none; background: #8eb446; color: #fff; transition: all 0.2s; }
.btn-buy:hover { background: #7a9a3c; }
.btn-buy:disabled { background: #ddd; color: #999; cursor: not-allowed; }

/* ===== 下单表单 ===== */
.order-form label { display: block; font-size: 0.85em; font-weight: 600; color: #555; margin-bottom: 4px; }
.order-form input, .order-form textarea { width: 100%; border: 1px solid #ddd; border-radius: 6px; padding: 10px 12px; font-size: 0.9em; outline: none; transition: border-color 0.2s; font-family: inherit; }
.order-form input:focus, .order-form textarea:focus { border-color: #8eb446; }
.order-form textarea { min-height: 70px; resize: vertical; }
.order-summary { background: #f9fdf3; border-radius: 8px; padding: 14px 16px; margin: 16px 0; display: flex; justify-content: space-between; align-items: center; }
.order-summary .total { font-size: 1.4em; font-weight: 800; color: #d48400; }
.order-summary .total small { font-size: 0.5em; color: #999; }
.order-success { text-align: center; padding: 20px 0; }
.order-success .check-icon { font-size: 3rem; color: #8eb446; display: block; margin-bottom: 12px; }
.modal-section { margin-bottom: 16px; }
.modal-section h4 { font-size: 0.95em; font-weight: 700; color: #555; margin-bottom: 8px; padding-bottom: 6px; border-bottom: 1px solid #eee; }
.modal-section p { font-size: 0.9em; color: #666; line-height: 1.7; }

/* ===== 支付/CTA/表单 ===== */
.pay-qr { text-align: center; padding: 10px 0; }
.pay-qr img { width: 200px; height: 200px; }
.pay-status { text-align: center; color: #999; font-size: 0.88em; margin-top: 8px; }
.cta-section { background: linear-gradient(135deg, #8eb446 0%, #7a9a3c 100%); border-radius: 10px; padding: 36px 28px; margin-top: 40px; text-align: center; color: #fff; }
.cta-section h3 { font-size: 1.35em; font-weight: 700; margin-bottom: 8px; }
.cta-section p { font-size: 0.92em; opacity: 0.9; margin-bottom: 20px; max-width: 520px; margin-left: auto; margin-right: auto; }
.cta-btn { display: inline-block; padding: 10px 32px; border-radius: 24px; font-size: 0.95em; font-weight: 700; cursor: pointer; border: 2px solid #fff; background: transparent; color: #fff; transition: all 0.2s; }
.cta-btn:hover { background: #fff; color: #8eb446; }
.inquiry-form { text-align: left; }
.inquiry-form .form-group { margin-bottom: 14px; }
.inquiry-form label { display: block; font-size: 0.85em; font-weight: 600; color: #555; margin-bottom: 4px; }
.inquiry-form input, .inquiry-form textarea { width: 100%; border: 1px solid #ddd; border-radius: 6px; padding: 10px 12px; font-size: 0.9em; outline: none; transition: border-color 0.2s; font-family: inherit; }
.inquiry-form input:focus, .inquiry-form textarea:focus { border-color: #8eb446; }
.inquiry-form textarea { min-height: 100px; resize: vertical; }

/* ===== 分类筛选标签（gallery 等）===== */
.filter-bar { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; padding: 8px 15px 20px; }
.filter-tag {
    padding: 6px 20px; border-radius: 20px; font-size: 0.85em; font-weight: 600;
    cursor: pointer; border: 1.5px solid #ddd; background: #fff; color: #888;
    transition: all 0.2s; user-select: none;
}
.filter-tag:hover { border-color: #8eb446; color: #8eb446; }
.filter-tag.active { background: #8eb446; color: #fff; border-color: #8eb446; }

/* ===== 瀑布流（gallery）===== */
.masonry-grid { column-count: 4; column-gap: 14px; }
.gallery-group { margin-bottom: 28px; padding: 0 15px; }
.gallery-group .masonry-grid { padding: 0; }
.gallery-group-title { font-size: 1.15rem; font-weight: 700; color: #3a4a22; cursor: pointer; user-select: none; padding: 10px 15px; margin: 0 0 10px; background: linear-gradient(90deg, #eef3e2, #f6f9ee); border-left: 6px solid #8eb446; border-radius: 8px; display: flex; align-items: center; }
.gallery-group-title:hover { background: linear-gradient(90deg, #e7efd5, #eef3e2); }
.gallery-group-count { font-size: 0.8rem; font-weight: 400; color: #fff; background: #8eb446; border-radius: 10px; padding: 1px 9px; margin-left: 8px; }
.gallery-group-body.hidden { display: none; }
body.dark-mode .gallery-group-title { color: #ccc; background: linear-gradient(90deg, #2a3320, #2a2e24); }
body.dark-mode .gallery-group-title:hover { background: linear-gradient(90deg, #333a28, #303428); }
@media (max-width: 992px) { .masonry-grid { column-count: 3; } }
@media (max-width: 768px) { .masonry-grid { column-count: 2; column-gap: 10px; } }
@media (max-width: 480px) { .masonry-grid { column-count: 2; column-gap: 6px; } }
.masonry-item {
    break-inside: avoid; margin-bottom: 14px; border-radius: 8px;
    overflow: hidden; cursor: pointer; position: relative; background: #eee;
    transition: transform 0.2s;
}
.masonry-item:hover { transform: translateY(-3px); }
.masonry-item img { width: 100%; display: block; transition: transform 0.4s; }
.masonry-item:hover img { transform: scale(1.05); }
.masonry-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.65) 0%, rgba(0,0,0,0.05) 60%, transparent 100%);
    opacity: 0; transition: opacity 0.3s;
    display: flex; flex-direction: column; justify-content: flex-end; padding: 16px 14px;
}
.masonry-item:hover .masonry-overlay { opacity: 1; }
.masonry-overlay .overlay-name { color: #fff; font-size: 1.15em; font-weight: 700; line-height: 1.3; margin-bottom: 4px; }
.masonry-overlay .overlay-title { color: rgba(255,255,255,0.85); font-size: 0.85em; font-weight: 400; line-height: 1.4; }
.masonry-overlay .overlay-cat { color: rgba(255,255,255,0.7); font-size: 0.72em; margin-top: 4px; }

/* ===== 自定义灯箱（gallery）===== */
.lightbox-overlay {
    display: none; position: fixed; inset: 0; background: rgba(0,0,0,0.92);
    z-index: 9999; align-items: center; justify-content: center;
}
.lightbox-overlay.active { display: flex; }
.lightbox-overlay img { max-width: 90vw; max-height: 85vh; object-fit: contain; border-radius: 4px; box-shadow: 0 8px 40px rgba(0,0,0,0.5); transition: opacity 0.3s; }
.lb-close { position: fixed; top: 16px; right: 20px; font-size: 32px; color: rgba(255,255,255,0.8); cursor: pointer; z-index: 10001; background: none; border: none; line-height: 1; }
.lb-close:hover { color: #fff; }
.lb-nav { position: fixed; top: 50%; transform: translateY(-50%); font-size: 42px; color: rgba(255,255,255,0.7); cursor: pointer; z-index: 10001; background: none; border: none; padding: 20px 14px; transition: color 0.2s; user-select: none; }
.lb-nav:hover { color: #fff; }
.lb-prev { left: 8px; } .lb-next { right: 8px; }
@media (max-width: 768px) { .lb-nav { font-size: 32px; padding: 14px 8px; } }
.lb-image-wrap { position: relative; display: flex; flex-direction: column; align-items: flex-start; max-width: 90vw; }
.lb-info { text-align: left; padding: 0; margin-top: 20px; width: 100%; }
.lb-info .lb-title { color: #fff; font-size: 1em; font-weight: 600; margin-bottom: 4px; }
.lb-info .lb-desc { color: rgba(255,255,255,0.7); font-size: 0.85em; margin-bottom: 6px; display: none; }
.lb-info .lb-counter { display: none; }
.lb-info.playing .lb-desc { display: block; }
.lb-counter-overlay { position: absolute; bottom: 8px; right: 8px; color: rgba(255,255,255,0.6); font-size: 0.82em; background: rgba(0,0,0,0.4); padding: 2px 8px; border-radius: 4px; pointer-events: none; }
.lb-toolbar { position: fixed; top: 16px; left: 20px; display: flex; gap: 12px; z-index: 10001; }
.lb-toolbar button { background: rgba(255,255,255,0.15); border: 1px solid rgba(255,255,255,0.25); color: rgba(255,255,255,0.8); padding: 8px 14px; border-radius: 18px; cursor: pointer; font-size: 0.85em; transition: all 0.2s; }
.lb-toolbar button:hover { background: rgba(255,255,255,0.25); color: #fff; }
.lb-toolbar button.playing { background: #8eb446; border-color: #8eb446; color: #fff; }
.scroll-status { text-align: center; padding: 20px; color: #aaa; font-size: 0.85em; }
.scroll-status .dot-pulse::after { content: "..."; animation: dots 1.5s infinite; }
@keyframes dots { 0%,20% { content: "."; } 40%,60% { content: ".."; } 80%,100% { content: "..."; } }

/* ===== RSS 订阅阅读器 ===== */
.rss-subscribe-bar { background: #fff; border-radius: 10px; padding: 20px 24px; box-shadow: 0 2px 10px rgba(0,0,0,0.05); margin-bottom: 4px; }
.rss-sub-form { display: flex; gap: 6px; }
.rss-sub-input { flex: 1; min-width: 0; padding: 10px 12px; border: 2px solid #e0e0e0; border-radius: 8px; font-size: 0.9em; outline: none; transition: border-color 0.2s; }
.rss-sub-input:focus { border-color: #8eb446; }
.rss-sub-btn { padding: 10px 16px; background: #8eb446; color: #fff; border: none; border-radius: 8px; font-weight: 600; font-size: 0.85em; cursor: pointer; transition: background 0.2s; white-space: nowrap; flex-shrink: 0; }
.rss-sub-btn:hover { background: #7a9a3c; }
.rss-sub-btn-reset { background: #fff; color: #888; border: 2px solid #ddd; padding: 10px 12px; }
.rss-sub-btn-reset:hover { background: #f5f5f5; color: #555; }
.rss-quick-links { margin-top: 10px; font-size: 0.8em; color: #aaa; }
.rss-quick-links a { color: #999; margin-left: 6px; }
.rss-quick-links a:hover { color: #8eb446; }
.rss-panel { background: #fff; border-radius: 10px; box-shadow: 0 2px 10px rgba(0,0,0,0.05); overflow: hidden; }
.rss-panel-title { margin: 0; padding: 14px 18px; font-size: 1em; font-weight: 700; color: #555; border-bottom: 1px solid #f0f0f0; background: #fafafa; display: flex; align-items: center; gap: 6px; }
.rss-panel-action { font-size: 0.75em; font-weight: 400; color: #999; margin-left: auto; }
.rss-panel-action:hover { color: #8eb446; }
.rss-feed-list { list-style: none; padding: 0; margin: 0; }
.rss-feed-item { padding: 12px 16px; border-bottom: 1px solid #f5f5f5; transition: background 0.15s; }
.rss-feed-item:hover { background: #fafdf5; }
.rss-feed-item.active { background: #f6faf0; border-left: 3px solid #8eb446; padding-left: 13px; }
.rss-feed-link { display: flex; align-items: center; justify-content: space-between; text-decoration: none !important; margin-bottom: 2px; }
.rss-feed-name { font-weight: 700; color: #333; font-size: 0.9em; flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; line-height: 1.5; }
.rss-feed-count { background: #e8f0d8; color: #669900; font-size: 0.7em; font-weight: 700; padding: 2px 8px; border-radius: 10px; min-width: 20px; text-align: center; flex-shrink: 0; margin-left: 6px; }
.rss-feed-desc { font-size: 0.76em; color: #aaa; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding-right: 60px; }
.rss-feed-actions { float: right; margin-top: -18px; position: relative; z-index: 2; }
.rss-feed-actions a { color: #ccc; font-size: 0.8em; margin-left: 6px; transition: color 0.2s; }
.rss-feed-actions a:hover { color: #8eb446; }
.rss-panel-toggle { margin-left: auto; color: #999; font-size: 0.9em; cursor: pointer; }
.rss-panel-toggle:hover { color: #8eb446; }
.rss-sidebar { transition: all 0.3s; }
.rss-show-sidebar { display: none; padding: 6px 14px; margin-bottom: 12px; background: #f0f5e8; color: #8eb446; border-radius: 6px; font-size: 0.85em; font-weight: 600; text-decoration: none !important; }
.rss-show-sidebar:hover { background: #e0ecd0; color: #669900; }
.rss-main { transition: all 0.3s; }
.rss-sidebar.collapsed { display: none; }
#rssLayout.sidebar-collapsed .rss-main { width: 100% !important; flex: 0 0 100% !important; max-width: 100% !important; }
#rssLayout.sidebar-collapsed .rss-sidebar { display: none; }
@media (max-width: 767px) {
    #rssFeedList { display: block; }
    .rss-feed-item { padding: 10px 14px; }
}

.rss-article-card { padding: 16px 18px; border-bottom: 1px solid #f5f5f5; transition: background 0.15s; }
.rss-article-card:hover { background: #fafdf5; }
.rss-article-card:last-child { border-bottom: none; }
.rss-article-title { font-size: 1em; font-weight: 700; color: #333; display: block; margin-bottom: 4px; line-height: 1.4; }
.rss-article-title:hover { color: #8eb446; }
.rss-article-source { font-size: 0.72em; color: #8eb446; background: #f0f5e8; padding: 1px 8px; border-radius: 8px; margin-left: 4px; }
.rss-article-meta { font-size: 0.78em; color: #aaa; margin-bottom: 6px; }
.rss-article-desc { font-size: 0.85em; color: #666; line-height: 1.85; margin: 0; }
.rss-article-desc p { margin: 0 0 0.6em; }
.rss-article-expand { display: inline-block; margin-top: 6px; font-size: 0.82em; color: #8eb446; cursor: pointer; font-weight: 600; }
.rss-article-expand:hover { color: #669900; }
.rss-article-full { margin-top: 12px; padding: 0; font-size: 0.92em; line-height: 1.85; color: #333; }
.rss-article-full.hidden { display: none; }
.rss-article-full p { margin: 0 0 0.8em; }
.rss-panel .chapter-nav { display: flex; justify-content: space-between; padding: 16px 18px; border-top: 1px solid #f0f0f0; background: #fafafa; border-radius: 0 0 10px 10px; }
.chapter-nav-btn { padding: 8px 20px; background: #8eb446; color: #fff; border-radius: 6px; font-size: 0.9em; font-weight: 600; text-decoration: none !important; transition: background 0.2s; }
.chapter-nav-btn:hover { background: #7a9a3c; color: #fff !important; }

/* ===== Markdown 阅读器 ===== */
#mdContent { margin-bottom: 28px; }
.markdown-body { background: transparent !important; }
.article-body, .markdown-body { word-wrap: break-word; overflow-wrap: break-word; }
.article-body pre, .markdown-body pre,
.article-body code, .markdown-body code { white-space: pre-wrap; word-break: break-all; }
@media (max-width: 768px) {
    .markdown-body, .article-body { font-size: 15px; }
    .markdown-body h1, .article-body h1 { font-size: 1.6em; }
    .markdown-body h2, .article-body h2 { font-size: 1.3em; }
    .article-body pre, .markdown-body pre,
    .article-body pre code, .markdown-body pre code { white-space: pre; word-break: normal; overflow-x: auto; }
}

/* ===== API 阅读器 ===== */
.api-request-card { background: #fff; border-radius: 12px; padding: 20px 22px; box-shadow: 0 2px 12px rgba(0,0,0,0.05); margin-bottom: 14px; }
.api-bar { display: flex; gap: 10px; align-items: center; }
.api-method-tabs { display: flex; gap: 0; border-radius: 8px; overflow: hidden; border: 2px solid #e0e0e0; flex-shrink: 0; }
.api-method-tab { padding: 10px 18px; font-size: 0.85em; font-weight: 700; cursor: pointer; background: #fafafa; color: #999; transition: all 0.15s; margin: 0; }
.api-method-tab:first-child { border-right: 1px solid #e0e0e0; }
.api-method-tab.active { background: #8eb446; color: #fff; border-color: #8eb446; }
.api-method-tab:hover:not(.active) { background: #f0f5e8; color: #8eb446; }
.api-url-input { flex: 1; min-width: 0; padding: 10px 14px; border: 2px solid #e0e0e0; border-radius: 8px; font-size: 0.9em; outline: none; font-family: monospace; transition: border-color 0.2s; }
.api-url-input:focus { border-color: #8eb446; }
.api-send-btn { padding: 10px 24px; background: linear-gradient(135deg, #8eb446, #7a9a3c); color: #fff; border: none; border-radius: 8px; font-weight: 700; font-size: 0.9em; cursor: pointer; transition: all 0.2s; white-space: nowrap; letter-spacing: 0.5px; }
.api-send-btn:hover { background: linear-gradient(135deg, #7a9a3c, #669900); transform: translateY(-1px); box-shadow: 0 4px 12px rgba(142,180,70,0.3); }
.api-advanced-toggle { font-size: 0.82em; color: #aaa; cursor: pointer; margin-top: 10px; user-select: none; }
.api-advanced-toggle:hover { color: #8eb446; }
.api-advanced-grid { display: flex; gap: 12px; margin-top: 10px; flex-wrap: wrap; }
.api-advanced-grid > div { flex: 1; min-width: 220px; }
.api-label { font-size: 0.78em; color: #999; font-weight: 600; display: block; margin-bottom: 4px; text-transform: uppercase; letter-spacing: 0.5px; }
.api-textarea { width: 100%; border: 1px solid #e0e0e0; border-radius: 6px; padding: 8px 10px; font-size: 0.82em; font-family: "SF Mono",Monaco,monospace; outline: none; resize: vertical; background: #fafafa; transition: border-color 0.2s; line-height: 1.5; }
.api-textarea:focus { border-color: #8eb446; background: #fff; }

.api-examples { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 16px; }
.api-example-chip { display: inline-block; padding: 6px 14px; background: #fff; border: 1px solid #e8e8e8; border-radius: 18px; font-size: 0.8em; color: #888; text-decoration: none !important; transition: all 0.2s; cursor: pointer; }
.api-example-chip:hover { border-color: #8eb446; color: #8eb446; background: #f9fdf3; }

.api-error { background: #fff5f5; border: 1px solid #fecaca; color: #c62828; padding: 14px 18px; border-radius: 10px; margin-bottom: 14px; font-size: 0.9em; }

.api-response-card { background: #fff; border-radius: 12px; overflow: hidden; box-shadow: 0 2px 16px rgba(0,0,0,0.06); }
.api-response-header { padding: 14px 18px; border-bottom: 1px solid #f0f0f0; }
.api-status-row { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.api-status-badge { font-weight: 800; font-size: 0.85em; padding: 4px 12px; border-radius: 5px; min-width: 48px; text-align: center; }
.api-status-badge.ok { background: #e8f5e9; color: #2e7d32; }
.api-status-badge.err { background: #ffebee; color: #c62828; }
.api-status-text { font-weight: 700; font-size: 0.9em; }
.api-status-text.ok { color: #2e7d32; }
.api-status-text.err { color: #c62828; }
.api-meta { font-size: 0.8em; color: #aaa; }
.api-header-toggle { font-size: 0.8em; color: #aaa; text-decoration: none !important; cursor: pointer; margin-left: 4px; }
.api-header-toggle:hover { color: #8eb446; }
.api-headers-panel { display: none; margin-top: 10px; padding: 10px 14px; background: #fafafa; border-radius: 8px; font-size: 0.78em; max-height: 200px; overflow-y: auto; }
.api-header-line { padding: 3px 0; color: #666; font-family: monospace; border-bottom: 1px solid #f0f0f0; white-space: pre-wrap; word-break: break-all; }
.api-header-line:last-child { border-bottom: none; }

.api-json { background: #1e1e1e; margin: 0; padding: 20px; font-size: 0.83em; line-height: 1.65; overflow-x: auto; white-space: pre-wrap; word-break: break-all; max-height: 65vh; overflow-y: auto; border-radius: 0; }
.api-json code { background: none; color: #d4d4d4; font-family: "SF Mono",Monaco,"Cascadia Code",monospace; }
/* JSON 高亮 */
.api-json .jk { color: #9cdcfe; }
.api-json .js { color: #ce9178; }
.api-json .jn { color: #b5cea8; }
.api-json .jb { color: #569cd6; }
.api-json .jl { color: #569cd6; }
/* XML 高亮 */
.api-json .jt { color: #569cd6; }  /* 标签名 */
.api-json .ja { color: #9cdcfe; }  /* 属性名 */
.api-json .jv { color: #ce9178; }  /* 属性值引号 */
.api-json .jc { color: #6a9955; }  /* CDATA / 注释 */
.api-json .jx { color: #808080; }  /* 声明 */
.api-json .jm { color: #6a9955; }  /* 注释 */

.api-empty { text-align: center; padding: 60px 24px; }
.api-empty-icon { font-size: 4rem; color: #e0e0e0; margin-bottom: 16px; }
.api-empty h3 { font-size: 1.2em; color: #bbb; margin-bottom: 8px; font-weight: 600; }
.api-empty p { font-size: 0.9em; color: #ccc; line-height: 1.6; }

@media (max-width: 640px) {
    .api-bar { flex-wrap: wrap; }
    .api-url-input { flex: 1 1 100%; }
    .api-send-btn { width: 100%; text-align: center; }
    .api-method-tabs { width: 100%; }
    .api-method-tab { flex: 1; text-align: center; }

    .article-rss {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
        padding: 10px 12px;
    }
    .article-rss-label {
        white-space: normal;
    }
    .article-rss form {
        flex-wrap: wrap;
    }
    .article-rss input[type="text"] {
        flex: 1 1 100%;
        min-width: 0;
    }
    .article-rss .btn1 {
        flex-shrink: 0;
    }
}
/* ===== 合作伙伴卡片 ===== */
.partner-grid {
    display: flex; flex-wrap: wrap; justify-content: center;
    gap: 24px; padding: 10px 15px;
}
.partner-card {
    flex: 0 0 200px; max-width: 200px;
    background: #fff; border-radius: 10px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.06);
    transition: transform 0.25s, box-shadow 0.25s;
}
.partner-card:hover { transform: translateY(-4px); box-shadow: 0 6px 18px rgba(0,0,0,0.1); }
.partner-card a { display: block; text-decoration: none; padding: 20px 12px 16px; }
.partner-logo {
    display: block; max-width: 150px; width: 100%; height: auto;
    margin: 0 auto; transition: opacity 0.3s;
}
.partner-name {
    display: block; text-align: center; margin-top: 12px;
    font-size: 0.9rem; font-weight: 600; color: #555;
}
@media (max-width: 480px) {
    .partner-card { flex: 0 0 140px; max-width: 140px; }
    .partner-logo { max-width: 110px; }
}

/* ===== 图片对齐（全局通用）===== */
.img-left { float: left; margin: 0 16px 10px 0; max-width: 100%; height: auto; }
.img-center { display: block; margin: 10px auto; max-width: 100%; height: auto; }
.img-right { float: right; margin: 0 0 10px 16px; max-width: 100%; height: auto; }
@media (max-width: 640px) {
    .img-left, .img-right { float: none; display: block; margin: 10px auto; }
}

/* ===== 目录 (TOC) ===== */
.toc {
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 20px 28px;
    margin: 24px 0;
    background: #fafafa;
}
.toc ul { padding-left: 1.5em; }
.toc li { margin: 4px 0; line-height: 1.8; }
.toc a { color: #336600; text-decoration: none; }
.toc a:hover { text-decoration: underline; }

/* ===== GitHub Alert 提示框 ===== */
.markdown-alert {
    padding: 12px 16px;
    margin: 16px 0;
    border-left: 4px solid;
    border-radius: 6px;
    background: #f8f9fa;
}
.markdown-alert-title {
    font-weight: 600;
    margin-bottom: 6px;
    display: flex;
    align-items: center;
    gap: 8px;
}
.markdown-alert-title svg { flex-shrink: 0; }
.markdown-alert p { margin: 4px 0; }
.markdown-alert-note { border-left-color: #0969da; }
.markdown-alert-note .markdown-alert-title { color: #0969da; }
.markdown-alert-note svg { fill: #0969da; }
.markdown-alert-tip { border-left-color: #1a7f37; }
.markdown-alert-tip .markdown-alert-title { color: #1a7f37; }
.markdown-alert-tip svg { fill: #1a7f37; }
.markdown-alert-important { border-left-color: #8250df; }
.markdown-alert-important .markdown-alert-title { color: #8250df; }
.markdown-alert-important svg { fill: #8250df; }
.markdown-alert-warning { border-left-color: #bf8700; }
.markdown-alert-warning .markdown-alert-title { color: #bf8700; }
.markdown-alert-warning svg { fill: #bf8700; }
.markdown-alert-caution { border-left-color: #cf222e; }
.markdown-alert-caution .markdown-alert-title { color: #cf222e; }
.markdown-alert-caution svg { fill: #cf222e; }

/* ===== <details> 折叠区 ===== */
.markdown-body details,
.article-body details,
.markdown-content details {
    margin: 12px 0;
    padding: 12px 16px;
    border: 1px solid #d0d7de;
    border-radius: 6px;
}
.markdown-body summary,
.article-body summary,
.markdown-content summary {
    display: list-item;
    cursor: pointer;
    font-weight: 600;
    padding: 4px 0;
}
.markdown-body summary:hover,
.article-body summary:hover,
.markdown-content summary:hover { color: #0969da; }

/* details 内部 markdown 内容微调 */
.markdown-body details > :last-child,
.article-body details > :last-child,
.markdown-content details > :last-child { margin-bottom: 0; }
.markdown-body details > :first-child,
.article-body details > :first-child,
.markdown-content details > :first-child { margin-top: 0; }

/* ===== 徽章图片并排不换行（JS 辅助） ===== */
.markdown-body p.badge-row {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    align-items: center;
    justify-content: center;
}
.markdown-body p.badge-row img {
    width: auto !important;
}


/* 脚注 */
.footnotes-sep { margin-top: 2em; }
ol.footnotes { font-size: 0.88em; color: #6c757d; padding-left: 1.6em; }
ol.footnotes li { margin: 0.3em 0; }
sup.fn-ref a { text-decoration: none; padding: 0 1px; }
a.fn-back { text-decoration: none; margin-left: 4px; }

/* ===== 暗模式通用样式 ===== */
body.dark-mode { background: #1e1e1e; color: #e0e0e0; }
body.dark-mode a:hover { color: #a3d055; }
body.dark-mode .w3layouts-logo h1 a,
body.dark-mode .w3layouts-logo h1 a span { color: #fff !important; }
body.dark-mode .footer { background: #1a1a1a; color: #ccc; }
body.dark-mode .footer h4 { color: #ddd; }
body.dark-mode .footer a { color: #aaa; }
body.dark-mode .footer a:hover { color: #8eb446; }
body.dark-mode .agileits-w3layouts-copyright { background: #111; color: #888; }
body.dark-mode .agileits-w3layouts-copyright a { color: #8eb446; }
.footer-version { text-align: center; font-size: .78em; color: #aaa; margin-top: 4px; letter-spacing: .5px; }
.footer-version strong { color: #8eb446; font-weight: 700; }
body.dark-mode .footer-version { color: #777; }
body.dark-mode .about { background: transparent; }
body.dark-mode .batata { background: #1e1e1e; }
.batata pre { background: #f6f8fa; border: 1px solid #e5e7eb; padding: 14px; border-radius: 6px; overflow-x: auto; margin: 1em 0; }
body.dark-mode .batata pre { background: #2d2d2d; border-color: #777; color: #e0e0e0; }
body.dark-mode .w3ls-heading h2,
body.dark-mode .w3ls-heading h3 { color: #ddd; }

body.dark-mode .container-face { background: #2a2a2a; }

body.dark-mode .agileits-about-top-heading h3 { color: #ddd; }
body.dark-mode .agileits-about-top-heading p { color: #aaa; }
body.dark-mode .style-switcher { background: #2a2a2a; border-color: #333; }
body.dark-mode .style-switcher-label { color: #aaa; }
/* 文档正文暗色 */
body.dark-mode .markdown-body { color: #e0e0e0; --fgColor-default:#ededed; --fgColor-muted:#98989d; --fgColor-accent:#6cb0ff; --borderColor-default:#3a3a3c; --borderColor-muted:#3a3a3c; --bgColor-muted:#2a2a2a; }
body.dark-mode .markdown-body h1, body.dark-mode .markdown-body h2,
body.dark-mode .markdown-body h3, body.dark-mode .markdown-body h4,
body.dark-mode .markdown-body h5, body.dark-mode .markdown-body h6 { color: #eee; border-color: #3a3a3c; }
body.dark-mode .markdown-body a { color: #6cb0ff; }
body.dark-mode .markdown-body details,
body.dark-mode .article-body details,
body.dark-mode .markdown-content details { border-color: #3a3a3c; }
body.dark-mode .markdown-body code,
body.dark-mode .markdown-body pre { background: #2a2a2a; color: #e0e0e0; }
/* markdown-body 暗模式代码高亮（与 Batata 一致） */
body.dark-mode .markdown-body pre[class*=language-] { background: #2d2d2d; }
body.dark-mode .markdown-body code[class*=language-],
body.dark-mode .markdown-body pre[class*=language-] { color: #ddd; }
body.dark-mode .markdown-body .token.comment,
body.dark-mode .markdown-body .token.prolog,
body.dark-mode .markdown-body .token.doctype,
body.dark-mode .markdown-body .token.cdata { color: #b0b0b0; }
body.dark-mode .markdown-body .token.punctuation { color: #ddd; }
body.dark-mode .markdown-body .token.property,
body.dark-mode .markdown-body .token.tag,
body.dark-mode .markdown-body .token.boolean,
body.dark-mode .markdown-body .token.number,
body.dark-mode .markdown-body .token.constant,
body.dark-mode .markdown-body .token.symbol,
body.dark-mode .markdown-body .token.deleted { color: #f08d49; }
body.dark-mode .markdown-body .token.selector,
body.dark-mode .markdown-body .token.attr-name,
body.dark-mode .markdown-body .token.string,
body.dark-mode .markdown-body .token.char,
body.dark-mode .markdown-body .token.builtin,
body.dark-mode .markdown-body .token.inserted { color: #7ec699; }
body.dark-mode .markdown-body .token.operator,
body.dark-mode .markdown-body .token.entity,
body.dark-mode .markdown-body .token.url { color: #67cdcc; }
body.dark-mode .markdown-body .token.atrule,
body.dark-mode .markdown-body .token.attr-value,
body.dark-mode .markdown-body .token.keyword { color: #cc99cd; }
body.dark-mode .markdown-body .token.function,
body.dark-mode .markdown-body .token.class-name { color: #f8c555; }
body.dark-mode .markdown-body .token.regex,
body.dark-mode .markdown-body .token.important,
body.dark-mode .markdown-body .token.variable { color: #f08d49; }
body.dark-mode .markdown-body blockquote { color: #98989d; border-left-color: #3a3a3c; }
body.dark-mode .markdown-body table th,
body.dark-mode .markdown-body table td { border-color: #3a3a3c; }
body.dark-mode .markdown-body table th { background: #2f2f2f; color: #e8e8e8; }
body.dark-mode .markdown-body table tr { background: #262626; }
body.dark-mode .markdown-body table tr:nth-child(2n) { background: #222; }
/* Batata 样式暗色 */
body.dark-mode .article-body { color: #eee; }
body.dark-mode .callbacks_container { background: transparent; }
/* sample.php 暗色（callbacks_container 段落需直接覆盖内联样式中的颜色） */
body.dark-mode .callbacks_container h1,
body.dark-mode .callbacks_container h2,
body.dark-mode .callbacks_container h3,
body.dark-mode .callbacks_container h4,
body.dark-mode .callbacks_container h5,
body.dark-mode .callbacks_container h6 { color: #eee; }
body.dark-mode .callbacks_container p { color: #ddd; }
body.dark-mode .callbacks_container blockquote { color: #aaa; }
body.dark-mode .callbacks_container table th,
body.dark-mode .callbacks_container table td { border-color: #3a3a3c; }
body.dark-mode .callbacks_container table th { background: #2f2f2f; color: #e8e8e8; }
body.dark-mode .callbacks_container code { background: #333; color: #e0e0e0; }
body.dark-mode .callbacks_container pre { background: #2d2d2d; }
body.dark-mode .callbacks_container pre code { background: none; }
/* ===== sample.php 正文排版 ===== */
.callbacks_container h1 { font-size: 1.8rem; color: #222; margin: 1.2em 0 .6em; padding-bottom: 8px; border-bottom: 1px solid #eee; }
.callbacks_container h2 { font-size: 1.5rem; color: #333; margin: 1.1em 0 .5em; }
.callbacks_container h3 { font-size: 1.25rem; color: #444; margin: 1em 0 .4em; }
.callbacks_container h4 { font-size: 1.1rem; color: #555; margin: .9em 0 .35em; }
.callbacks_container h5 { font-size: 1rem; color: #666; margin: .8em 0 .3em; }
.callbacks_container h6 { font-size: .95rem; color: #777; margin: .7em 0 .25em; }
.callbacks_container p { font-size: 1rem; color: #333; margin: 0 0 .9em; line-height: 1.7; }
.callbacks_container ul, .callbacks_container ol { padding-left: 1.8em; margin: .6em 0; }
.callbacks_container pre { background: #f6f8fa; padding: 14px; border-radius: 6px; overflow-x: auto; margin: 1em 0; }
.callbacks_container code { background: rgba(27,31,35,.05); padding: 2px 5px; border-radius: 3px; font-size: .9em; font-family: monospace; }
.callbacks_container pre code { background: none; padding: 0; border-radius: 0; font-size: inherit; }
.callbacks_container blockquote { border-left: 4px solid #8eb446; padding-left: 1em; color: #6a737d; margin: 1em 0; }
.callbacks_container table { border-collapse: collapse; width: 100%; margin: 1em 0; }
.callbacks_container table th, .callbacks_container table td { border: 1px solid #ddd; padding: 6px 12px; }
.callbacks_container table th { background: #f6f8fa; }
.callbacks_container img { max-width: 100%; }
.callbacks_container pre[class*=language-] { background: #2d2d2d; }
.callbacks_container code[class*=language-], .callbacks_container pre[class*=language-] { color: #ddd; }
.agileinfo-single-icons h1 { font-size: 1.8rem; color: #8eb446; border-bottom: 2px solid #eee; padding-bottom: 10px; margin: 0 0 .3em; }
.agileinfo-single-icons ul { list-style: none; padding: 0 !important; margin: 0; display: flex; gap: 18px; flex-wrap: wrap; }
.agileinfo-single-icons ul li { font-size: .85rem; color: #888; padding: 0; }
.agileinfo-single-icons ul li:first-child { padding-left: 0; }
.agileinfo-single-icons ul li i { margin-right: 3px; }
.agileits_three_comments h3 { font-size: 1.3rem; color: #8eb446; margin: 1.2em 0 .8em; }
@media (max-width: 768px) {
  .callbacks_container h1 { font-size: 1.4rem; }
  .callbacks_container h2 { font-size: 1.2rem; }
  .callbacks_container h3 { font-size: 1.1rem; }
  .agileinfo-single-icons h1 { font-size: 1.4rem; }
}
body.dark-mode .article-body strong,
body.dark-mode .article-body b { color: #eee; }
body.dark-mode .article-body h1, body.dark-mode .article-body h2,
body.dark-mode .article-body h3, body.dark-mode .article-body h4,
body.dark-mode .article-body h5, body.dark-mode .article-body h6 { color: #eee; }
body.dark-mode .article-body blockquote { color: #aaa; border-color: #444; }
body.dark-mode .article-body code { background: #333; color: #e0e0e0; }
body.dark-mode .article-body pre { background: #2d2d2d; }
body.dark-mode .article-body table th,
body.dark-mode .article-body table td { border-color: #3a3a3c; }
body.dark-mode .article-body table th { background: #2f2f2f; color: #e8e8e8; }
body.dark-mode .article-body tbody tr td { background: #262626; }
body.dark-mode .article-body tbody tr:nth-child(even) td { background: #222; }
/* sample.php 暗色 */
body.dark-mode .agileinfo-single-icons h1 { color: #eee; border-bottom-color: #3a3a3c; }
body.dark-mode .agileinfo-single-icons ul li a,
body.dark-mode .agileinfo-single-icons ul li span { color: #bbb; }
body.dark-mode .agileits_three_comments h3 { color: #ddd; }
body.dark-mode .agileits_three_comment_grid { border-color: #3a3a3c; }
body.dark-mode .agileits_three_comment_grid h5,
body.dark-mode .agileits_three_comment_grid h5 a { color: #ddd; }
body.dark-mode .agileits_tom_right { border-color: #3a3a3c; }
body.dark-mode .agileits_tom_right p,
body.dark-mode .agileits_tom_right span,
body.dark-mode .agileits_tom_right a { color: #bbb; }
body.dark-mode .w3_leave_comment h3 { color: #ddd; }
body.dark-mode .w3_leave_comment input,
body.dark-mode .w3_leave_comment textarea { background: #333; color: #ddd; border-color: #555; }
body.dark-mode .reply a { color: #eee; }
body.dark-mode .reply a:hover { color: #fff; }
body.dark-mode .hardy { color: #888; }
body.dark-mode .lorem { color: #bbb; }
body.dark-mode .w3l-button a { background: #6a9c2e; color: #fff; }
body.dark-mode .w3l-button a:hover { background: #7aac38; }

/* 评论回复指示 */
.comment-reply { margin-left: 40px; border-left: 3px solid #8eb446; padding-left: 16px; }
.reply-to-indicator { font-size: .82rem; color: #8eb446; margin-bottom: 6px; }
body.dark-mode .comment-reply { border-left-color: #6a9c2e; }
body.dark-mode .hardy h4 { color: #eee; }
body.dark-mode .hardy p { color: #aaa; }
body.dark-mode .w3_leave_comment input[type="submit"] { background: #6a9c2e; color: #fff; border: none; padding: 8px 20px; border-radius: 4px; cursor: pointer; }
body.dark-mode .w3_leave_comment input[type="submit"]:hover { background: #7aac38; }
body.dark-mode .w3l-button a:hover { background: #7aac38; }

/* 评论回复指示 */
.comment-reply { margin-left: 40px; border-left: 3px solid #8eb446; padding-left: 16px; }
.reply-to-indicator { font-size: .82rem; color: #8eb446; margin-bottom: 6px; }
body.dark-mode .comment-reply { border-left-color: #6a9c2e; }
body.dark-mode .agileits_three_comment_grid h5 a { color: #eee; }
body.dark-mode .agileits_tom_right p { color: #ccc; }
body.dark-mode .agileits_tom { color: #ccc; }
body.dark-mode .w3_leave_comment h3 { color: #eee; }
/* 卡片暗色 */
body.dark-mode .novel-card { background: #2a2a2a; border-color: #3a3a3c; box-shadow: 0 1px 6px rgba(0,0,0,0.3); }
body.dark-mode .novel-card h3, body.dark-mode .novel-card h4 { color: #fff; }
body.dark-mode .novel-card p,
body.dark-mode .novel-card .text-muted { color: #aaa; }
body.dark-mode .section-card { background: #2a2a2a; border-color: #3a3a3c; }
body.dark-mode .section-card h1 { color: #fff; }
body.dark-mode .chapter-list { background: #262626; border-color: #3a3a3c; }
body.dark-mode .chapter-list li { color: #bbb; border-color: #333; }
body.dark-mode .chapter-list li:hover { background: #323232; }
body.dark-mode .content-expand-btn { background: #323232; color: #aaa; border-color: #444; }
body.dark-mode .content-expand-btn:hover { background: #3a3a3a; color: #8eb446; }
body.dark-mode .ver-summary-wrap { background: #2a2a2a; border-color: #3a3a3c; }
body.dark-mode .ver-summary { color: #bbb; }
body.dark-mode .newer-badge { background: #6a9c2e; }
body.dark-mode .num { color: #999; }
body.dark-mode .title-right { color: #888; }
body.dark-mode .book-info { border-color: #3a3a3c; }
body.dark-mode .book-3d img { box-shadow: 3px 3px 10px rgba(0,0,0,0.5), 1px 1px 2px rgba(0,0,0,0.3); }
body.dark-mode .book-3d::after { background: linear-gradient(to right, #3a3530, #4a4540 12%, #3d3833 50%, #4a4540 88%, #35302b); }
body.dark-mode .book-3d::before { background: linear-gradient(to right, #0a0604, #1a100a 25%, #120c08 50%, #1a100a 75%, #0a0604); }
/* software 卡片暗色 */
body.dark-mode .batata-card { background: #2a2a2a; border-color: #3a3a3c; box-shadow: 0 2px 8px rgba(0,0,0,0.3); }
body.dark-mode .batata-card:hover { box-shadow: 0 10px 30px rgba(0,0,0,0.5); }
body.dark-mode .batata-card-title,
body.dark-mode .batata-card-name { color: #eee; }
body.dark-mode .batata-card-sub,
body.dark-mode .batata-card-tagline { color: #aaa; }
body.dark-mode .batata-card-category { color: #a3d055; }
body.dark-mode .batata-card-bottom { border-color: #3a3a3c; }
body.dark-mode .batata-card-price { color: #f0b040; }
body.dark-mode .batata-card-price small { color: #888; }
body.dark-mode .ph-card h3,
body.dark-mode .sg-card h3,
body.dark-mode .ta-card h3,
body.dark-mode .t2i-card h3,
body.dark-mode .t2v-card h3,
body.dark-mode .color-card h3 { color: #ccc !important; border-bottom-color: #444 !important; }
body.dark-mode .batata-card-img-wrap { background: #1e1e1e; }
body.dark-mode .batata-card-img-placeholder { background: #333; }
body.dark-mode .batata-platform-tag { background: #333; color: #bbb; }
body.dark-mode .batata-modal-overlay { background: rgba(0,0,0,0.8); }
body.dark-mode .batata-modal { background: #2a2a2a; color: #ddd; }
body.dark-mode .batata-modal-name { color: #eee; }
body.dark-mode .batata-modal-tagline { color: #aaa; }
body.dark-mode .batata-modal-desc { color: #bbb; }
body.dark-mode .batata-modal-section { border-color: #3a3a3c; }
body.dark-mode .inquiry-form { background: #262626; border-color: #3a3a3c; }
body.dark-mode .inquiry-form input,
body.dark-mode .inquiry-form textarea { background: #333; color: #ddd; border-color: #555; }
body.dark-mode .batata-btn-detail { background: #333; color: #a3d055; border-color: #a3d055; }
body.dark-mode .batata-btn-detail:hover { background: #3a3a3a; color: #b8e060; }
body.dark-mode .batata-btn-buy { background: #6a9c2e; }
body.dark-mode .batata-btn-buy:hover { background: #7aac38; }
body.dark-mode .batata-btn-disabled { background: #333; color: #666; }
body.dark-mode .batata-btn-disabled:hover { background: #333; color: #666; }
/* sw-btn 兼容 */
.sw-btn { padding: 6px 18px; border-radius: 18px; font-size: 0.82em; font-weight: 600; cursor: pointer; border: none; transition: all 0.2s; display: inline-block; }
.sw-btn-detail { background: #fff; color: #8eb446; border: 1.5px solid #8eb446; }
.sw-btn-detail:hover { background: #f0f5e8; color: #669900; }
.sw-btn-buy { background: #8eb446; color: #fff; }
.sw-btn-buy:hover { background: #7a9a3c; color: #fff; }
body.dark-mode .sw-btn-detail { background: #333; color: #a3d055; border-color: #a3d055; }
body.dark-mode .sw-btn-detail:hover { background: #3a3a3a; color: #b8e060; }
body.dark-mode .sw-btn-buy { background: #6a9c2e; }
body.dark-mode .sw-btn-buy:hover { background: #7aac38; }
/* online-works 卡片暗色 */
body.dark-mode .book-card { background: #2a2a2a; border-color: #3a3a3c; box-shadow: 0 2px 8px rgba(0,0,0,0.3); }
body.dark-mode .book-card:hover { box-shadow: 0 6px 20px rgba(0,0,0,0.5); }
body.dark-mode .book-card-title { color: #eee; }
body.dark-mode .book-card-author { color: #aaa; }
body.dark-mode .book-card-img { background: #1e1e1e; }
body.dark-mode .plan-card { background: #2a2a2a; border-color: #3a3a3c; }
body.dark-mode .plan-card.recommended { background: #2a3020; border-color: #8eb446; }
body.dark-mode .plan-name { color: #eee; }
body.dark-mode .plan-desc { color: #aaa; }
body.dark-mode .plan-price { color: #f0b040; }
body.dark-mode .badge-vip { background: linear-gradient(135deg, #f0a500, #d48400); }
body.dark-mode .pay-tab { background: #333; color: #bbb; }
body.dark-mode .pay-tab.active { background: #8eb446; color: #fff; }
/* video 卡片暗色 */
body.dark-mode .video-card { background: #2a2a2a; border-color: #3a3a3c; }
body.dark-mode .video-card:hover { box-shadow: 0 4px 14px rgba(0,0,0,0.4); }
body.dark-mode .vc-title { color: #eee; }
body.dark-mode .vc-digest { color: #aaa; }
body.dark-mode .vc-meta { color: #888; }
body.dark-mode .vc-meta a { color: #a3d055; }
body.dark-mode .vg-heading { background: linear-gradient(90deg, #2a3020, #2a2a2a); color: #ccc; }
body.dark-mode .video-empty { color: #888; }
/* podcast 卡片暗色 */
body.dark-mode .audio-card { background: #2a2a2a; border-color: #3a3a3c; }
body.dark-mode .audio-card:hover { box-shadow: 0 4px 14px rgba(0,0,0,0.4); }
body.dark-mode .audio-card.playing { background: #2a3020; border-color: #8eb446; }
body.dark-mode .ac-title { color: #eee; }
body.dark-mode .ac-meta { color: #888; }
body.dark-mode .ac-meta a { color: #a3d055; }
body.dark-mode .ac-play { background: #6a9c2e; }
body.dark-mode .audio-card.playing .ac-play { background: #c0392b; }
body.dark-mode .aplayer { background: #2a2a2a; border-color: #8eb446; }
body.dark-mode .ap-title { color: #eee; }
body.dark-mode .ap-meta { color: #888; }
body.dark-mode .ap-ctrl button { color: #bbb; }
body.dark-mode .ap-ctrl button:hover { background: #3a3a3a; color: #8eb446; }
body.dark-mode .ap-close { color: #888; }
body.dark-mode .ap-close:hover { color: #ddd; }
body.dark-mode .ap-time { color: #888; }
body.dark-mode .audio-empty { color: #888; }
/* third-party-works 按钮 + 卡片暗色 */
.btn-detail { padding: 6px 18px; border-radius: 18px; font-size: 0.82em; font-weight: 600; cursor: pointer; border: 1.5px solid #8eb446; background: #fff; color: #8eb446; transition: all 0.2s; display: inline-block; }
.btn-detail:hover { background: #f0f5e8; color: #669900; }
.btn-buy { padding: 6px 18px; border-radius: 18px; font-size: 0.82em; font-weight: 600; cursor: pointer; border: none; background: #8eb446; color: #fff; transition: all 0.2s; display: inline-block; }
.btn-buy:hover { background: #7a9a3c; color: #fff; }
.btn-buy:disabled { background: #ddd; color: #999; cursor: not-allowed; }
body.dark-mode .btn-detail { background: #333; color: #a3d055; border-color: #a3d055; }
body.dark-mode .btn-detail:hover { background: #3a3a3a; color: #b8e060; }
body.dark-mode .btn-buy { background: #6a9c2e; }
body.dark-mode .btn-buy:hover { background: #7aac38; }
body.dark-mode .btn-buy:disabled { background: #333; color: #666; }
body.dark-mode .product-name { color: #eee; }
body.dark-mode .product-tagline { color: #aaa; }
body.dark-mode .product-category { color: #a3d055; }
body.dark-mode .product-price { color: #f0b040; }
body.dark-mode .product-bottom { border-color: #3a3a3c; }
body.dark-mode .product-shipping-badge { background: #333; }
body.dark-mode .product-stock-badge.stock-in { background: #2a3a20; color: #a3d055; }
body.dark-mode .product-stock-badge.stock-out { background: #3a2020; color: #e0745c; }
body.dark-mode .order-form { background: #262626; border-color: #3a3a3c; }
body.dark-mode .order-form input { background: #333; color: #ddd; border-color: #555; }
body.dark-mode .order-summary { color: #bbb; }
body.dark-mode .modal-section { border-color: #3a3a3c; color: #bbb; }
/* joinus 暗色 */
body.dark-mode .contact { background: #1e1e1e; }
body.dark-mode .agileits-contact-address { background: #2a2a2a; color: #bbb; }
body.dark-mode .agileits-contact-address h4 { color: #ddd; }
body.dark-mode .agileits-contact-address p { color: #aaa; }
body.dark-mode .agile-contact-form { background: #2a2a2a; }
body.dark-mode .agile-contact-form input,
body.dark-mode .agile-contact-form textarea { background: #333; color: #ddd; border-color: #555; }
body.dark-mode .agile-contact-form input::placeholder,
body.dark-mode .agile-contact-form textarea::placeholder { color: #888; }
body.dark-mode .w3layouts-contact-form-top { background: #2a2a2a; }
body.dark-mode .contact-form-top { background: #2a2a2a; }
body.dark-mode .agileinfo-contact-form-grid { background: #2a2a2a; }
body.dark-mode .agileinfo-contact-form-grid label { color: #ccc; }
body.dark-mode .agileinfo-contact-form-grid input,
body.dark-mode .agileinfo-contact-form-grid textarea { background: #333; color: #ddd; border-color: #555; }
body.dark-mode .admin { color: #bbb; }
body.dark-mode .admin a { color: #bbb; }
body.dark-mode .admin a:hover { color: #a3d055; }
body.dark-mode .date-grid { color: #bbb; }
body.dark-mode .time p { color: #aaa; }
body.dark-mode .time { color: #aaa; }
body.dark-mode .w3layouts-contact-form-top h3,
body.dark-mode .contact-form-top h3 { color: #ddd; }
body.dark-mode .w3layouts-contact-form-top p { color: #aaa; }
/* aboutus 暗色 */
body.dark-mode .team { background: #1e1e1e; }
body.dark-mode .team-grid { border-color: #3a3a3c; }
body.dark-mode .team-position { color: #aaa; }
body.dark-mode .team-icons a { color: #888; }
body.dark-mode .team-icons a:hover { color: #8eb446; }
body.dark-mode .agile-choose-grid { border-color: #3a3a3c; }
body.dark-mode .choose-info h5 { color: #ddd; }
body.dark-mode .choose-info p { color: #aaa; }
body.dark-mode .w3-agileits-choose { background-color: transparent; }
body.dark-mode .w3-agileits-choose .agile-choose-grids { background: transparent; }
body.dark-mode .agileinfo-top-grids h4 { color: #ddd; }
.aboutus-top-grids { margin-top: 1em !important; }
body.dark-mode .agileinfo-top-grids p { color: #aaa; }
body.dark-mode .wthree-top-grid h4 { color: #ddd; }
body.dark-mode .wthree-top-grid p { color: #aaa; }
body.dark-mode .partner-card { background: #2a2a2a; border-color: #3a3a3c; }
body.dark-mode .partner-card:hover { box-shadow: 0 4px 14px rgba(0,0,0,0.4); }
body.dark-mode .partner-name { color: #ddd; }
body.dark-mode .partner-logo { background: #333; }
body.dark-mode .timeline-desc,
body.dark-mode .timeline-desc p,
body.dark-mode .timeline-desc span { color: #bbb; }
body.dark-mode .timeline-desc h4 { color: #ddd; }
body.dark-mode .timeline-line { background: #444; }
body.dark-mode .image-rounded-style::before { box-shadow: inset 0 0 0 8px rgba(255,255,255,0.15), 0 1px 2px rgba(0,0,0,0.5); }
body.dark-mode .ih-item .info { background: rgba(0,0,0,0.7); }
body.dark-mode .ih-item .info h5 { color: #eee; }
body.dark-mode .ih-item .info p { color: #bbb; }
/* index 暗色 */
body.dark-mode .ai-card { background: #2a2a2a; border-color: #3a3a3c; }
body.dark-mode .ai-card:hover { box-shadow: 0 6px 20px rgba(0,0,0,0.5); }
body.dark-mode .ai-card-text { color: #eee; }
body.dark-mode .ai-card-text h4 a { color: #eee; }
body.dark-mode .ai-card-text h4 a:hover { color: #a3d055; }
body.dark-mode .ai-card-digest { color: #bbb; }
body.dark-mode .ai-card-date { color: #999; }
body.dark-mode .ai-card-empty .ai-card-img { background: #333; }
body.dark-mode .welcome { color: #bbb; }
body.dark-mode .welcome h3 { color: #eee; }
body.dark-mode .welcome p { color: #aaa; }
body.dark-mode .chapter-nav { border-color: #3a3a3c; }
body.dark-mode .chapter-nav .btn { background: #2a2a2a; border-color: #3a3a3c; color: #a3d055; }
body.dark-mode .chapter-nav .btn:hover { background: #333; border-color: #8eb446; }
body.dark-mode .services { background: #1e1e1e; }
body.dark-mode .services-right-grids h4 { color: #ddd; }
body.dark-mode .services-right-grids p { color: #aaa; }
body.dark-mode .services-icon-info h5 { color: #ddd; }
body.dark-mode .services-icon-info p { color: #aaa; }
body.dark-mode .w3l-heading h3 { color: #eee; }
body.dark-mode .news-broadcast { background: #1e1e1e; }
body.dark-mode .broadcast-list-header { color: #ddd; border-color: #3a3a3c; padding-bottom: 8px; margin-bottom: 8px; }
body.dark-mode .broadcast-news-text h5 a,
body.dark-mode .broadcast-news-text h5 { color: #eee; }
body.dark-mode .broadcast-news-text h5 a:hover { color: #a3d055; }
body.dark-mode .broadcast-news-text p { color: #aaa; }
body.dark-mode .broadcast-row { align-items: stretch; }
body.dark-mode .broadcast-list-col { background: #2a2a2a; border-radius: 8px; padding: 12px 16px; display: flex; flex-direction: column; justify-content: flex-start; }
body.dark-mode .broadcast-news-num { color: #eee; }
body.dark-mode .broadcast-news-item { padding: 8px 12px; margin-bottom: 4px; box-shadow: none; }
body.dark-mode .broadcast-news-item,
body.dark-mode .broadcast-news-item:hover,
body.dark-mode .broadcast-playing { background: transparent; }
body.dark-mode .broadcast-playing .broadcast-news-text h5 a { color: #8eb446; }
body.dark-mode .broadcast-news-empty .broadcast-news-text h5 { color: #bbb; }
body.dark-mode .broadcast-news-empty .broadcast-news-text p { color: #999; }
body.dark-mode .subscribe-grid { background: transparent; }
body.dark-mode .subscribe-grid h3 { color: #ddd; }
body.dark-mode .subscribe-grid p { color: #aaa; }
body.dark-mode .subscribe-grid input[type="text"] { background: #333; color: #ddd; border-color: #555; }
/* documents.php 暗色 */
body.dark-mode .doc-sidebar { background: #1e1e1e; }
body.dark-mode .doc-sidebar .sidebar-header h3 { color: #ddd; }
body.dark-mode .doc-sidebar .sidebar-header large { color: #aaa; }
body.dark-mode .doc-main { background: #1a1a1a; }
body.dark-mode .style-switcher { background: #2a2a2a !important; border-color: #3a3a3c; }
body.dark-mode .style-switcher-label { color: #aaa; }
body.dark-mode #docThemeBtn { background: #333; border-color: #555; }
body.dark-mode .welcome h3 { color: #eee; }
body.dark-mode .welcome p { color: #aaa; }
body.dark-mode .chapter-nav { border-color: #3a3a3c; }
body.dark-mode .chapter-nav .btn { background: #2a2a2a; border-color: #3a3a3c; color: #a3d055; }
body.dark-mode .chapter-nav .btn:hover { background: #333; border-color: #8eb446; }
body.dark-mode #content-area .article-detail .article-title { color: #8eb446; }
.article-meta { display: flex; flex-wrap: wrap; gap: 16px; align-items: center; font-size: .88rem; letter-spacing: .3px; }
.article-meta span { display: inline-flex; align-items: center; gap: 4px; }
/* rss.php 暗色 */
body.dark-mode .rss-subscribe-bar { background: #2a2a2a; border-color: #3a3a3c; }
body.dark-mode .rss-sub-input { background: #333; color: #ddd; border-color: #555; }
body.dark-mode .rss-sub-btn { background: #6a9c2e; }
body.dark-mode .rss-sub-btn-reset { background: #555; }
body.dark-mode .rss-quick-links a { color: #aaa; }
body.dark-mode .rss-quick-links a:hover { color: #a3d055; }
body.dark-mode .rss-panel { background: #2a2a2a; border-color: #3a3a3c; }
body.dark-mode .rss-panel-title { color: #eee; background: #323232; border-color: #3a3a3c; }
body.dark-mode .rss-article-card:hover { background: #323232; box-shadow: none; }
body.dark-mode .rss-article-card:last-child { border-bottom: none; }
body.dark-mode .rss-feed-list { background: #262626; }
body.dark-mode .rss-feed-item { color: #bbb; border-color: #3a3a3c; }
body.dark-mode .rss-feed-item:hover { background: #323232; }
body.dark-mode .rss-feed-item.active { background: #2a3a20; color: #a3d055; }
body.dark-mode .rss-feed-name { color: #eee; }
body.dark-mode .rss-feed-desc { color: #888; }
body.dark-mode .rss-feed-count { background: #444; color: #bbb; }
body.dark-mode .rss-article-title { color: #fff; }
body.dark-mode .rss-article-title:hover { color: #8eb446; }
body.dark-mode .rss-article-desc { color: #aaa; }
body.dark-mode .rss-article-meta { color: #888; }
body.dark-mode .rss-article-source { color: #a3d055; }
body.dark-mode .rss-panel-action a { color: #aaa; }
body.dark-mode .rss-panel-action a:hover { color: #e74c3c; }
body.dark-mode .rss-show-sidebar { background: #6a9c2e; }
body.dark-mode .chapter-nav { color: #888; }
/* restfull.php 暗色 */
body.dark-mode .api-bar { background: #2a2a2a; border-color: #3a3a3c; }
body.dark-mode .api-method-tabs button { color: #aaa; background: #333; border-color: #555; }
body.dark-mode .api-method-tabs button.active { background: #6a9c2e; color: #fff; border-color: #6a9c2e; }
body.dark-mode .api-request-card,
body.dark-mode .api-response-card { background: #2a2a2a; border-color: #3a3a3c; }
body.dark-mode .api-request-card h3,
body.dark-mode .api-response-card h3 { color: #ddd; }
body.dark-mode .api-label { color: #aaa; }
body.dark-mode .api-url-input { background: #1e1e1e; color: #ddd; border-color: #555; }
body.dark-mode .api-textarea { background: #1e1e1e; color: #ddd; border-color: #555; }
body.dark-mode .api-json { background: #262626; color: #bbb; }
body.dark-mode .api-response-header { color: #aaa; border-color: #3a3a3c; }
body.dark-mode .api-header-toggle { color: #8eb446; }
body.dark-mode .api-advanced-toggle { color: #aaa; }
body.dark-mode .api-advanced-grid { background: #262626; border-color: #3a3a3c; }
body.dark-mode .api-advanced-grid input { background: #1e1e1e; color: #ddd; border-color: #555; }
body.dark-mode .api-example-chip { background: #333; color: #bbb; }
body.dark-mode .api-example-chip:hover { background: #444; color: #fff; }
body.dark-mode .api-empty { color: #888; }
body.dark-mode .api-empty-icon { color: #666; }
body.dark-mode .api-error { background: #3a2020; color: #e0745c; }
body.dark-mode .api-status-badge.ok { background: #2a3a20; color: #a3d055; }
body.dark-mode .api-status-badge.err { background: #3a2020; color: #e0745c; }
body.dark-mode .api-status-text.ok { color: #a3d055; }
body.dark-mode .api-status-text.err { color: #e0745c; }

/* ===== index.php 专用 ===== */
/* 通知条 */
.top-notice { background: #fff8e6; border-bottom: 1px solid #f0e0b0; color: #7a5b00; font-size: 14px; line-height: 1.5; }
.top-notice-inner { max-width: 1200px; margin: 0 auto; padding: 9px 44px; position: relative; display: flex; align-items: center; justify-content: center; gap: 8px; text-align: center; }
.top-notice-icon { color: #c99a00; flex-shrink: 0; }
.top-notice a { color: #7a5b00; text-decoration: underline; }
.top-notice-dismiss { position: absolute; right: 14px; top: 50%; transform: translateY(-50%); background: none; border: none; color: #a88a3a; cursor: pointer; font-size: 18px; line-height: 1; padding: 2px 6px; }
body.dark-mode .top-notice { background: #2a2a20; border-color: #4a4a30; color: #bbb; }
body.dark-mode .top-notice a { color: #ddd; }
body.dark-mode .top-notice-icon { color: #c9a040; }
body.dark-mode .top-notice-dismiss { color: #999; }
/* 更多按钮行 */
.news-more-row { text-align: right; margin-top: 20px; padding: 0 15px; }
.news-more-btn { display: inline-block; padding: 7px 22px; background: #8eb446; color: #fff; border-radius: 20px; font-size: .9rem; text-decoration: none; transition: background .2s; }
.news-more-btn:hover { background: #7da13a; color: #fff; }
/* 播报视频 */
.broadcast-video { border-radius: 6px; }
.broadcast-placeholder-img { border-radius: 6px; }
.broadcast-placeholder-icon { font-size: 3rem; color: rgba(255,255,255,.8); }
.broadcast-placeholder-text { color: #fff; margin-top: 8px; font-size: .9rem; }
.broadcast-news-item.broadcast-playing { background: rgba(142,180,70,.12); border-radius: 6px; }
.broadcast-news-item.broadcast-playing h5 a { color: #8eb446; font-weight: 700; }
/* welcome 图片 */
.welcome-img { border-radius: 6px; }
/* welcome 文字暗色 */
body.dark-mode .w3-welcome-left h5 { color: #eee; }
body.dark-mode .w3-welcome-left p { color: #bbb; }
body a {
  transition: 0.5s all;
  -webkit-transition: 0.5s all;
  -o-transition: 0.5s all;
  -moz-transition: 0.5s all;
  -ms-transition: 0.5s all;
}
a:focus, button:focus {
    outline: none;
}
html, body{
    font-size: 100%;
	font-family: 'Raleway', sans-serif;
}
body{
	background:#FFFFFF;
}
/*-- banner --*/
.banner{
	background: url(../images/1.jpg) no-repeat 0px 0px;
    background-size: cover;
    padding: 0em 0 4em;
}
/*-- header-left --*/
.header {
    background: #ffffff;
    padding: 1em 0;
}
.header-left{
	float: left;
}
.w3layouts-logo {
    margin: 1.5em 0 0 0;
}
.w3layouts-logo h1 {
    margin: 0;
}
.w3layouts-logo h1 a {
    color: #2f2f2f;
    font-size: 1em;
    text-decoration: none;
    font-weight: 900;
    font-family: 'Raleway', sans-serif;
    text-transform: uppercase;
    letter-spacing: 3px;
}
.w3layouts-logo h1 a span{
    color: #82b62d;
    font-size: .5em;
    text-decoration: none;
    font-family: 'Raleway', sans-serif;
    font-style: italic;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0;
}
/*-- //header-left --*/
.header-right{
	float: right;
    margin: 1.4em 0 0 0;
}
.w3-header-top{
	text-align: right;
}
.w3-header-top ul{
	padding:0;
	margin:0;
}
.w3-header-top ul li{
	display:inline-block;
	color:#999999;
	font-size:.9em;
}
.w3-header-top ul li:nth-child(2){
	margin:0 0 0 1em;
}
.w3-header-top ul li a{
	color:#999999;
	text-decoration:none;
}
.w3-header-top ul li a:hover{
	color:#82b62d;
}
/*-- top-nav --*/
.top-nav{
    margin: .5em 0 0 0;
    float: left;
}
.top-nav ul{
    padding: 0;
    margin: 0;
}
.top-nav ul li{
    display: inline-block;
    margin: 0 .6em;
    float: left;
}
.top-nav ul li:nth-child(6){
}
ul.nav.navbar-nav {
    float: right;
}
.navbar-default{
    background: none;
    border: none;
    margin: 0;
}
.navbar {
    min-height: 0;
}
.navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
    background: none !important;
    box-shadow: 1px 0px 0px 0px rgba(72, 72, 72, 0);
}
.top-nav ul li a{
    color: #2f2f2f !important;
    font-size: 1em;
    margin: 0;
    text-decoration: none;
    padding: 0;
    font-weight: 600;
    font-family: 'Raleway', sans-serif;
    letter-spacing: 1px;
}
.top-nav ul li a:hover{
    color: #82b62d !important;
}
.top-nav ul li a.active{
    color: #82b62d !important;
}
ul.dropdown-menu {
    background: rgb(255, 255, 255);
    box-shadow: 0 0 0;
    border: none;
    margin: 0;
    top: 3em;
    left: 0;
    min-width: 90px;
}
.dropdown-menu > li > a {
    display: block;
    padding: 0px 0px !important;
    clear: both;
    margin: .2em 0 !important;
    font-weight: normal;
    line-height: 1.42857143;
    color: #FFF !important;
    border: none !important;
}
.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus {
    background: none;
}
.dropdown-submenu {
    position: relative;
}

.dropdown-submenu>.dropdown-menu {
    top: 0;
    left: 103%;
    margin-top: -6px;
    margin-left: -1px;
    -webkit-border-radius: 0 6px 6px 6px;
    -moz-border-radius: 0 6px 6px;
    border-radius: 0 6px 6px 6px;
}

.dropdown-submenu:hover>.dropdown-menu {
    display: block;
}

.dropdown-submenu>a:after {
    display: block;
    content: " ";
    float: right;
    width: 0;
    height: 0;
    border-color: transparent;
    border-width: 5px 0 5px 5px;
    margin-top: 5px;
    margin-right: -10px;
}

.dropdown-submenu:hover>a:after {
    border-left-color: #fff;
}

.dropdown-submenu.pull-left {
    float: none;
}

.dropdown-submenu.pull-left>.dropdown-menu {
    left: -100%;
    margin-left: 10px;
    -webkit-border-radius: 6px 0 6px 6px;
    -moz-border-radius: 6px 0 6px 6px;
    border-radius: 6px 0 6px 6px;
}
/*-- //top-nav --*/
/*-- social-icons --*/
.agileinfo-social-grids {
    float: right;
    margin-left: 0.8em;
    margin-top: 0.55em;
}
.agileinfo-social-grids ul {
    display: flex; align-items: flex-end; gap: 0.35em;
    padding: 0; margin: 0;
}
.agileinfo-social-grids ul li {
    margin: 0;
    list-style: none;
}
.agileinfo-social-grids ul li a {
    display: inline-flex; align-items: center; justify-content: center;
    width: 20px; height: 20px; vertical-align: middle;
    color: #333;
    text-align: center;
}
.agileinfo-social-grids ul li a svg { display: block; }
.agileinfo-social-grids ul li a i.fa {
    font-size: 14px; line-height: 1;
    color: #2f2f2f;
    transition: 0.3s all;
}
.agileinfo-social-grids ul li a i.fa-github:hover { color: #3b82f6; }
.agileinfo-social-grids ul li a i.fa-weixin:hover { color: #07c160; }
.agileinfo-social-grids ul li a i.fa-bolt:hover { color: #ff0000; }
.agileinfo-social-grids ul li a i.fa-rss:hover { color: #f0a030; }
/* SVG 图标颜色 */
.hdr-icon-sun { fill: #f0a030; stroke: #f0a030; transition: 0.3s all; }
.hdr-icon-sun:hover { fill: #ffcc00; stroke: #ffcc00; }
.hdr-icon-moon { fill: #333; stroke: #333; transition: 0.3s all; }
.hdr-icon-moon:hover { fill: #f0a030; stroke: #f0a030; }
.hdr-icon-width { color: #2f2f2f; transition: 0.3s all; }
.hdr-icon-width:hover { color: #8eb446; }
/* 暗模式：社交图标 */
body.dark-mode .agileinfo-social-grids ul li a i.fa { color: #fff; }
body.dark-mode .agileinfo-social-grids ul li a i.fa-rss:hover { color: #f0a030; }
body.dark-mode .agileinfo-social-grids ul li a i.fa-weixin:hover { color: #07c160; }
body.dark-mode .agileinfo-social-grids ul li a i.fa-bolt:hover { color: #ff0000; }
body.dark-mode .agileinfo-social-grids ul li a i.fa-github:hover { color: #3b82f6; }
body.dark-mode .agileinfo-social-grids ul li a svg { color: #fff; }
body.dark-mode .hdr-icon-sun { fill: #f0a030; stroke: #f0a030; }
body.dark-mode .hdr-icon-sun:hover { fill: #ffcc00; stroke: #ffcc00; }
body.dark-mode .hdr-icon-width { color: #fff; }
body.dark-mode .hdr-icon-width:hover { color: #8eb446; }
/*-- //social-icons --*/
.w3layouts-banner-slider {
    margin: 9em 0;
}
.agileits-banner-info {
	text-align:center;
}
.agileits-banner-info h6{
    color: #FFFFFF;
    font-size: 1em;
    margin: 0 0 1em 0;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 7px;
}
.agileits-banner-info h3{
    color: #FFFFFF;
    font-size: 5em;
    margin: 0;
    font-family: 'Raleway', sans-serif;
    font-weight: 900;
}
.agileits-banner-info p{
    color: #FFFFFF;
    font-size: .9em;
    margin: 1em auto 0;
    line-height: 1.8em;
    width: 43%;
}
.w3-button{
    margin: 2em 0 1em 0;
}
.w3-button a{
    color: #FFFFFF;
    font-size: 1em;
    text-decoration: none;
    padding: .5em 2em;
    background: #82b62d;
    text-align: center;
    border: solid 2px #82b62d;
}
.w3-button a:hover{
	background:none;
	border: solid 2px #FFFFFF;
}
/*--slider--*/
#slider2,
#slider3 {
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  margin: 0 auto;
}
.rslides_tabs li:first-child {
  margin-left: 0;
}
.rslides_tabs .rslides_here a {
  background: rgba(255,255,255,.1);
  color: #fff;
  font-weight: bold;
}
.events {
  list-style: none;
}
.callbacks_container {
  position: relative;
  float: left;
  width: 100%;
}
.callbacks {
  position: relative;
  list-style: none;
  overflow: hidden;
  width: 100%;
  padding: 0;
  margin: 0;
}
.callbacks li {
  position: absolute;
  width: 100%;
}
.callbacks img {
  position: relative;
  z-index: 1;
  height: auto;
  border: 0;
}
.callbacks .caption {
	display: block;
	position: absolute;
	z-index: 2;
	font-size: 20px;
	text-shadow: none;
	color: #fff;
	left: 0;
	right: 0;
	padding: 10px 20px;
	margin: 0;
	max-width: none;
	top: 10%;
	text-align: center;
}
.callbacks_nav {
    position: absolute;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    bottom: 109px;
    left: 0;
    z-index: 3;
    text-indent: -9999px;
    overflow: hidden;
    text-decoration: none;
    width: 50px;
    height: 50px;
    background: transparent url(../images/arrows.png) no-repeat left top;
}
.callbacks_nav.next {
    left: auto;
    background-position: right top;
    right: 0;
 }
 .callbacks_nav.prev {
    right: auto;
    background-position: left top;
    left: 0;
}
#slider3-pager a {
  display: inline-block;
}
#slider3-pager span{
  float: left;
}
#slider3-pager span{
	width:100px;
	height:15px;
	background:#fff;
	display:inline-block;
	border-radius:30em;
	opacity:0.6;
}
#slider3-pager .rslides_here a {
  background: #FFF;
  border-radius:30em;
  opacity:1;
}
#slider3-pager a {
  padding: 0;
}
#slider3-pager li{
	display:inline-block;
}
.rslides {
  position: relative;
  list-style: none;
  overflow: hidden;
  width: 100%;
  padding: 0;
}
.rslides li {
  -webkit-backface-visibility: hidden;
  position: absolute;
  display:none;
  width: 100%;
  left: 0;
  top: 0;
}
.rslides li:first-child {
  position: relative;
  display: block;
  float: left;
}
.rslides img {
  height: auto;
  border: 0;
  }
.callbacks_tabs{
    list-style: none;
    position: absolute;
    top: 124%;
    left: 50%;
    transform: translateX(-50%);
    padding: 0;
    margin: 0;
    display: block;
    z-index: 999;
}
.slider-top span{
	font-weight:600;
}
.callbacks_tabs li{
    display: inline-block;
    margin: 0;
}
/*----*/
.callbacks_tabs a{
 visibility: hidden;
}
.callbacks_tabs a:after {
    content: "\f111";
    font-size: 0;
    font-family: FontAwesome;
    visibility: visible;
    display: block;
    height: 10px;
    width: 10px;
    display: inline-block;
    background: #ffffff;
    border: 2px solid #ffffff;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -o-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
}
.callbacks_here a:after{
	background: #82b62d;
    border: 2px solid #82b62d;
}
/*-- //slider --*/
/*-- welcome --*/
.welcome,.services,.news,.newsletter,.footer,.codes,.typography,.batata,.contact{
	padding:40px 0;
}
.w3l-heading h2,.w3l-heading h3,.agileits-about-top-heading h3{
    color: #212121;
    font-size: 2.5em;
    font-weight: 700;
    letter-spacing: 7px;
    margin: 0;
    text-align: center;
    text-transform: uppercase;
    font-family: 'Raleway', sans-serif;
}
.w3-welcome-grids,.agileits-services,.wthree-news-grids,.w3-agileits-newsletter,.agileinfo-top-grids{margin: 4em 0 0 0;
    margin: 4em 0 0 0;
}
.w3-welcome-left h5{
    color: #000000;
    font-size: 1em;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 4px;
    margin: 0;
}
.w3-welcome-left p{
	color:#999999;
	font-size:.9em;
	line-height:1.8em;
	margin:1em 0 0 0;
}
.w3-welcome-left p span{
	display:block;
	margin:1em 0 0 0;
}
.w3l-button {
    margin: 2em 0 1em 0;
}
.w3l-button a {
    color: #FFFFFF;
    font-size: .9em;
    text-decoration: none;
    padding: .5em 2em;
    background: #82b62d;
    text-transform: uppercase;
    font-weight: 600;
    text-align: center;
    border: solid 1px #82b62d;
}
.w3l-button a:hover {
    background: none;
    border: solid 1px #212121;
    color: #212121;
}
.w3l-button a:focus{
	outline:none;
}
.w3ls-welcome-img1 img{
	width:100%;
}
.w3-welcome-bottom{
	margin:3em 0 0 0;
}
/*-- //welcome --*/
/*-- services --*/
.services{
	background:#f0f5f8;
}
.services-right-grid {
    text-align: center;
}
i.fa.fa-anchor, i.fa.fa-comment, i.fa.fa-heartbeat,i.fa.fa-magnet,i.fa.fa-thumbs-up {
    color: #82b62d;
    font-size: 2em;
}
.services-icon{
    width: 70px;
    height: 70px;
    text-align: center;
    border: solid 2px #f1f1f1;
    padding: 1.2em 0 0 0;
    margin: 0 auto;
}
/* Radial In */
.hvr-radial-in {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -moz-osx-font-smoothing: grayscale;
    position: relative;
    overflow: hidden;
    background: #82b62d;
    -webkit-transition-property: color;
    transition-property: color;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
}
.hvr-radial-in:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #ffffff;
    border-radius: 100%;
    -webkit-transform: scale(2);
    transform: scale(2);
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
}
.hvr-radial-in:hover, .hvr-radial-in:focus, .hvr-radial-in:active {
  color: white;
}
.services-right-grid:hover div.hvr-radial-in:before{
  -webkit-transform: scale(0);
  transform: scale(0);	
}
.services-right-grid:hover i.fa.fa-anchor,.services-right-grid:hover i.fa.fa-comment,.services-right-grid:hover i.fa.fa-heartbeat,.services-right-grid:hover i.fa.fa-magnet,.services-right-grid:hover  i.fa.fa-thumbs-up{
	color:#FFFFFF;
	transition: 0.5s all;
	-webkit-transition: 0.5s all;
	-o-transition: 0.5s all;
	-moz-transition: 0.5s all;
	-ms-transition: 0.5s all;	
}
.services-icon-info h5{
    color: #2f2f2f;
    font-size: 1em;
    font-weight: 600;
    margin: 1em 0 0 0;
}
.services-right-grids:nth-child(2){
	margin: 3em 0 0 0;
}
.services-icon-info p{
	color: #999999;
    font-size: .9em;
    margin: 1em 0 0 0;
    line-height: 1.8em;
}
/*-- //services --*/
/*-- news --*/
.agile-news-left img{
	width:100%;
}
.admin {
    float: left;
}
.time {
    float: left;
    margin-left: 5em;
}
.admin a {
    color: #2f2f2f;
    font-size: .875em;
    margin: 0;
    text-decoration: none;
}
.admin a:hover{
    color: #82b62d;
}
.time p {
    color: #383838;
    font-size: .875em;
    margin: 0;
}
.w3-agile-news-info{
    margin: 2em 0 1em 2em;	
}
.w3-agile-news-info a{
	color: #212121;
    font-size: 2.5em;
    font-weight: 700;
    margin: 0;
    font-family: 'Raleway', sans-serif;
    text-decoration: none;
    line-height: 1.2em;
}
.w3-agile-news-info a span{
	display:block;
}
.w3-agile-news-info a:hover{
    color: #999999;
}
/*-- //news --*/
/*-- newsletter --*/
.jarallax {
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}
/* jarallax 容器后备背景色，防止移动端 fixed 层滚动滞后时露白 */
[id^="jarallax-container-"] {
    background-color: #233349;
}
.newsletter {
    background: url(../images/5.jpg) no-repeat 0px 0px;
    background-size: cover;
    text-align: center;
}
.newsletter-heading h3{
	color:#FFFFFF;
}
.subscribe-grid{
    text-align: center;
    width: 75%;
    margin: 0 auto;
}
.subscribe-grid input[type="text"] {
	display: inline-block;
    background: #FFFFFF;
    border: solid 1px #FFFFFF;
    width: 50%;
    outline: none;
    padding: 1em;
    font-size: .9em;
    color: #999999;
}
.subscribe-grid i.fa.fa-paper-plane-o{
    color: #FFFFFF !important;
    font-size: 1.2em !important;
}
.subscribe-grid button.btn1 {
    color: #ffffff;
    font-size: .9em;
    border: solid 1px #82b62d;
    width: 60px;
    height: 51px;
    text-align: center;
    text-decoration: none;
    background: #82b62d;
    transition: 0.5s all;
    -webkit-transition: 0.5s all;
    -moz-transition: 0.5s all;
    -o-transition: 0.5s all;
    -ms-transition: 0.5s all;
}
button.btn1:hover{
    border: solid 1px #ffffff;
    background: none;
}
button.btn1:hover i.fa.fa-paper-plane-o{
    color: #FFFFFF !important;
}
/*-- //newsletter --*/
/*-- footer --*/
.footer{
    background: #f0f5f8;
}
.agile-footer-grid h4{
    color: #212121;
    font-size: 1.3em;
    font-weight: 600;
    margin: 0 0 1em 0;
    letter-spacing: 1px;
}
.agile-footer-grid p{
	color: #bbbbbb;
    font-size: .9em;
    line-height: 1.8em;
    margin: 0;
}
.agile-footer-grid p span {
    display: block;
    margin: 1em 0 0 0;
}
.agile-footer-grid ul{
	padding:0;
	margin:0;
}
ul.w3agile_footer_grid_list li {
    list-style-type: none;
    color: #bbbbbb;
    line-height: 1.8em;
    margin-bottom: 1em;
	font-size:.9em;
}
ul.w3agile_footer_grid_list li:last-child {
    margin-bottom: 0;
}
ul.w3agile_footer_grid_list li a {
    color: #82b62d !important;
    text-decoration: none;
}
ul.w3agile_footer_grid_list li a:hover{
	color: #212121 !important;
}
ul.w3agile_footer_grid_list li span {
    display: block;
    margin: 1em 0 0;
}
ul.w3agile_footer_grid_list i.fa.fa-twitter{
	margin-right:1em;
}
.agile-footer-grid ul{
	padding:0;
	margin:0;
}
.agile-footer-grid ul li{
	display: block;
    margin-bottom: .5em;
    color: #8a8a8a;
    font-size: .9em;
} 
.agile-footer-grid  ul li a {
    color: #212121;
    text-decoration: none;
    margin-left: .5em;
}
.agile-footer-grid  ul li a:hover{
	color:#82b62d;
}
/*-- //footer --*/
/*-- copyright --*/
.agileits-w3layouts-copyright{
	padding:1em 0;
	background:#0f1215;
	text-align:center;
}
.agileits-w3layouts-copyright p{
	color:#FFFFFF;
}
.agileits-w3layouts-copyright p a{
	color:#82b62d;
}
.agileits-w3layouts-copyright p a:hover{
	color:#FFFFFF;
}
/*-- //copyright --*/
/*-- about --*/
.about-banner{
    padding: 0 !important;
}
.w3ls-heading{
	padding:30px 0;
}
.w3ls-heading h2{
    color: #FFFFFF;
    font-size: 2.5em;
    font-weight: 700;
    letter-spacing: 7px;
    margin: 0;
    text-align: center;
    text-transform: uppercase;
    font-family: 'Raleway', sans-serif;
}
/*-- about-top --*/
.agileits-about-top-heading{
	text-align:center;
}
.wthree-top-grid h4{
    color: #000000;
    font-size: 1.2em;
    margin: 1em 0;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: capitalize;
}
.wthree-top-grid p{
    color: #999999;
    font-size: .9em;
    line-height: 1.8em;
    margin: 0;
}
.wthree-top-grid img{
	width:100%;
}
/*-- //about-top --*/
/*-- choose --*/
.w3-agileits-choose{
	padding: 4em 0;
    background: url(../images/5.jpg) no-repeat 0px 0px;
    background-size: cover;
}
.agileits-w3layouts-choose-heading h3{
	color:#FFFFFF !important;
}
.agile-choose-grids{
	margin:4em 0 0 0;
}
.agile-choose-grid{
	text-align:center;
}
.choose-info h4{
	color:#FFFFFF;
}
.choose-info p{
    color: #FFFFFF;
    font-size: .9em;
    line-height: 1.8em;
}
.choose-icon i.fa.fa-user,.choose-icon i.fa.fa-cogs,.choose-icon i.fa.fa-thumbs-o-up {
    background: #82b62d;
    padding: .9em 0 0 0;
    width: 90px;
    height: 90px;
    color: #FFFFFF;
    font-size: 2em;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    transition: 0.5s all;
    -webkit-transition: 0.5s all;
    -o-transition: 0.5s all;
    -moz-transition: 0.5s all;
    -ms-transition: 0.5s all;
}
/*-- //choose --*/
/*-- team --*/
.team{
	padding:40px 0;
	background:#FFFFFF;
}
.team-grids {
    margin: 4em 0 0 0;
}
.ih-item.circle {
    position: relative;
    width: 220px;
    height: 220px;
    border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-o-border-radius: 50%;
	-ms-border-radius: 50%;
    margin: 0 auto;
}
.ih-item.circle .img {
  position: relative;
  width: 220px;
  height: 220px;
  border-radius: 50%;
}
.ih-item.circle .img:before {
  position: absolute;
  display: block;
  content: '';
  width: 100%;
  height: 100%;
  border-radius: 50%;
  box-shadow: inset 0 0 0 16px rgba(255, 255, 255, 0.6), 0 1px 2px rgba(0, 0, 0, 0.3);
  -webkit-transition: all 0.35s ease-in-out;
  -moz-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out;
}
.ih-item.circle .img img {
    border-radius: 50%;
    width: 100%;
}
.ih-item.circle .info {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  text-align: center;
  border-radius: 50%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.ih-item.circle.effect10 .img {
  z-index: 11;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
  -webkit-transition: all 0.35s ease-in-out;
  -moz-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out;
}
.ih-item.circle.effect10.colored .info {
  background: #1a4a72;
}
.ih-item.circle.effect10 .info {
    background: #82b62d;
    opacity: 0;
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -ms-transform: scale(0);
    -o-transform: scale(0);
    transform: scale(0);
    -webkit-transition: all 0.35s ease-in-out;
    -moz-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out;
}
.ih-item.circle.effect10 .info h3 {
    color: #fff;
    text-transform: uppercase;
    position: relative;
    text-shadow: 0 0 1px white, 0 1px 2px rgba(0, 0, 0, 0.3);
}
.ih-item.circle.effect10 .info p {
  color: #bbb;
  font-style: italic;
  font-size: 12px;
  border-top: 1px solid rgba(255, 255, 255, 0.5);
}
.ih-item.circle.effect10:hover .info {
  visibility: visible;
  opacity: 1;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}

.ih-item.circle.effect10.top_to_bottom .info h3 {
  margin: 0 30px;
  padding: 25px 0 0 0;
  height: 78px;
}
.ih-item.circle.effect10.top_to_bottom .info p {
  margin: 0 30px;
  padding: 5px;
}
.ih-item.circle.effect10.top_to_bottom:hover .img {
  -webkit-transform: translateY(50px) scale(0.5);
  -moz-transform: translateY(50px) scale(0.5);
  -ms-transform: translateY(50px) scale(0.5);
  -o-transform: translateY(50px) scale(0.5);
  transform: translateY(50px) scale(0.5);
}

.ih-item.circle.effect10.bottom_to_top .info h3 {
    margin: 6.5em 0 1em 0;
    font-size: 1.2em;
    color: #FFF;
}
.ih-item.circle.effect10.bottom_to_top .info p {
  margin: 0 30px;
  padding: 5px;
}
.ih-item.circle.effect10.bottom_to_top:hover .img {
  -webkit-transform: translateY(-50px) scale(0.5);
  -moz-transform: translateY(-50px) scale(0.5);
  -ms-transform: translateY(-50px) scale(0.5);
  -o-transform: translateY(-50px) scale(0.5);
  transform: translateY(-50px) scale(0.5);
}
.team-icons ul{
	padding:0;
	margin:0;
}
.team-icons ul li{
	display:inline-block;
}
.team-icons ul li:nth-child(2){
	margin:0 1em;
}
.team-icons ul li a{
	color: #FFFFFF;
    text-align: center;	
}
.team-icons ul li a:hover{
	opacity:.5;
}
/*-- //team --*/
/*-- //about --*/
/*-- icons --*/
.about-heading{
	padding:4em 0 0 0;
}
.about-heading h2 {
    color: #b3bf06;
    font-size: 3em;
    margin: 0;
    font-family: 'Raleway', sans-serif;
    text-align: center;
}
.codes a {
    color: #999;
}
.icon-box {
    padding: 8px 15px;
    background: rgba(149, 149, 149, 0.18);
    margin: 1em 0 1em 0;
    border: 5px solid #ffffff;
    text-align: left;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1em;
    transition: 0.5s all;
    -webkit-transition: 0.5s all;
    -o-transition: 0.5s all;
    -ms-transition: 0.5s all;
    -moz-transition: 0.5s all;
    cursor: pointer;
} 
.icon-box:hover {
    background: #82b62d;
    text-decoration: none;
    transition: 0.5s all;
    -webkit-transition: 0.5s all;
    -o-transition: 0.5s all;
    -ms-transition: 0.5s all;
    -moz-transition: 0.5s all;
}
.icon-box:hover i.fa {
	color:#fff !important;
}
.icon-box:hover a.agile-icon {
	color:#fff !important;
}
.codes .bs-glyphicons li {
    float: left;
    width: 12.5%;
    height: 115px;
    padding: 10px; 
    line-height: 1.4;
    text-align: center;  
    font-size: 12px;
    list-style-type: none;	
}
.codes .bs-glyphicons .glyphicon {
    margin-top: 5px;
    margin-bottom: 10px;
    font-size: 24px;
}
.codes .glyphicon {
    position: relative;
    top: 1px;
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	color: #777;
} 
.codes .bs-glyphicons .glyphicon-class {
    display: block;
    text-align: center;
    word-wrap: break-word;
}
h3.icon-subheading {
	font-size: 1.5em;
    color: #212121 !important;
    margin: 30px 0 15px;
    text-transform: uppercase;
    font-family: 'Raleway', sans-serif;
}
h3.agileits-icons-title {
    text-align: center;
    font-size: 2em;
    margin: 0;
    letter-spacing: 1px;
    color: #212121 !important;
    text-transform: uppercase;
    font-family: 'Raleway', sans-serif;
    font-weight: 700;
}
.icons a {
	color: #999;
    text-decoration: none;
}
.icon-box i {
    margin-right: 10px !important;
    font-size: 20px !important;
    color: #282a2b !important;
}
.icons .bs-glyphicons li {
    float: left;
    width: 18%;
    height: 115px;
    padding: 10px;
    line-height: 1.4;
    text-align: center;
    font-size: 12px;
    list-style-type: none;
    background:rgba(149, 149, 149, 0.18);
    margin: 1%;
}
.icons .bs-glyphicons .glyphicon {
    margin-top: 5px;
    margin-bottom: 10px;
    font-size: 24px;
	color: #282a2b;
}
.icons .glyphicon {
    position: relative;
    top: 1px;
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	color: #777;
} 
.icons .bs-glyphicons .glyphicon-class {
    display: block;
    text-align: center;
    word-wrap: break-word;
}
ul.bs-glyphicons-list {
    padding: 0;
    margin: 0;
}
/*-- //icons --*/
/*-- typography --*/
h3.hdg {
    font-size: 1.5em;
    color: #212121 !important;
    margin: 30px 0 15px;
    text-transform: uppercase;
    font-family: 'Raleway', sans-serif;

}
.show-grid [class^=col-] {
    background: #fff;
  text-align: center;
  margin-bottom: 10px;
  line-height: 2em;
  border: 10px solid #f0f0f0;
}
.show-grid [class*="col-"]:hover {
  background: #e0e0e0;
}
.grid_3{
	margin-bottom:2em;
}
.xs h3, h3.m_1{
	color:#000;
	font-size:1.7em;
	font-weight:300;
	margin-bottom: 1em;
}
.grid_3 p{
  color: #555;
  font-size: 0.85em;
  margin-bottom: 1em;
  font-weight: 300;
}
.grid_4{
	background:none;
}
.label {
  font-weight: 300 !important;
  border-radius:4px;
}  
.grid_5{
	background:none;
	padding:30px 0;
}
.grid_5 h3, .grid_5 h2, .grid_5 h1, .grid_5 h4, .grid_5 h5, h3.hdg {
	margin-bottom:1em;
	color: #333;
}
.table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td {
  border-top: none !important;
}
.tab-content > .active {
  display: block;
  visibility: visible;
}
.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus {
  z-index: 0;
}
.badge-primary {
  background-color: #03a9f4;
}
.badge-success {
  background-color: #8bc34a;
}
.badge-warning {
  background-color: #ffc107;
}
.badge-danger {
  background-color: #e51c23;
}
.grid_3 p{
  line-height: 2em;
  color: #888;
  font-size: 0.9em;
  margin-bottom: 1em;
  font-weight: 300;
}
.bs-docs-example {
  margin: 1em 0;
}
section#tables  p {
 margin-top: 1em;
}
.tab-container .tab-content {
  border-radius: 0 2px 2px 2px;
  border: 1px solid #e0e0e0;
  padding: 16px;
  background-color: #ffffff;
}
.table td, .table>tbody>tr>td, .table>tbody>tr>th, .table>tfoot>tr>td, .table>tfoot>tr>th, .table>thead>tr>td, .table>thead>tr>th {
  padding: 15px!important;
}
.table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td {
  font-size: 0.9em;
  color: #555;
  border-top: none !important;
}
.tab-content > .active {
  display: block;
  visibility: visible;
}
.label {
  font-weight: 300 !important;
}
.label {
  padding: 4px 6px;
  border: none;
  text-shadow: none;
}
.nav-tabs {
  margin-bottom: 1em;
}
.alert {
  font-size: 0.85em;
}
h1.t-button,h2.t-button,h3.t-button,h4.t-button,h5.t-button {
	line-height:1.8em;
  margin-top:0.5em;
  margin-bottom: 0.5em;
}
li.list-group-item1 {
  line-height: 2.5em;
}
.input-group {
  margin-bottom: 20px;
  }
.in-gp-tl{
	padding:0;
}
.in-gp-tb{
	padding-right:0;
}
.list-group {
  margin-bottom: 48px;
}
ol {
  margin-bottom: 44px;
}
h2.typoh2{
    margin: 0 0 10px;
}
@media (max-width:768px){
.grid_5 {
	padding: 0 0 1em;
}
.grid_3 {
	margin-bottom: 0em;
}
}
@media (max-width:640px){
	h1, .h1, h2, .h2, h3, .h3 {
		margin-top: 0px;
		margin-bottom: 0px;
	}
	.grid_5 h3, .grid_5 h2, .grid_5 h1, .grid_5 h4, .grid_5 h5, h3.hdg, h3.bars {
		margin-bottom: .5em;
	}
	.progress {
		height: 10px;
		margin-bottom: 10px;
	}
	ol.breadcrumb li,.grid_3 p,ul.list-group li,li.list-group-item1 {
		font-size: 14px;
	}
	.breadcrumb {
		margin-bottom: 10px;
	}
	.well {
		font-size: 14px;
		margin-bottom: 10px;
	}
	h2.typoh2 {
		font-size: 1.5em;
	}
}
@media (max-width:480px){
	.table h1 {
		font-size: 26px;
	}
	.table h2 {
		font-size: 23px;
	}
	.table h3 {
		font-size: 20px;
	}
	.label {
		font-size: 53%;
	}
	.alert,p {
		font-size: 14px;
	}
	.pagination {
		margin: 20px 0 0px;
	}
}
@media (max-width: 320px){
	.grid_4 {
		margin-top: 18px;
	}
	.alert, p,ol.breadcrumb li, .grid_3 p,.well, ul.list-group li, li.list-group-item1,a.list-group-item {
		font-size: 13px;
	}
	.alert {
		padding: 10px;
		margin-bottom: 10px;
	}
	ul.pagination li a {
		font-size: 14px;
		padding: 5px 11px !important;
	}
	.list-group {
		margin-bottom: 10px;
	}
	.well {
		padding: 10px;
	}
	.table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td {
		font-size: 0.81em;
	}
	.table td, .table>tbody>tr>td, .table>tbody>tr>th, .table>tfoot>tr>td, .table>tfoot>tr>th, .table>thead>tr>td, .table>thead>tr>th {
		padding: 12px!important;
	}
	.codes .row {
		margin: 0;
	}
}
/*-- //typography --*/
/*-- gallery --*/
.grid {
	position: relative;
	clear: both;
	margin: 0 auto;
	max-width: 1000px;
	list-style: none;
	text-align: center;
}

/* Common style */
.grid figure {
	position: relative;	
	overflow: hidden;
	margin: 10px 0;
	height: auto;
	text-align: center;
	cursor: pointer;
}

.grid figure img {
	position: relative;
	display: block;
	width: 100%;
	opacity: 0.8;
}

.grid figure figcaption {
	padding: 7em;
    color: #fff;
    text-transform: uppercase;
    font-size: 1.25em;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.grid figure figcaption::before,
.grid figure figcaption::after {
	pointer-events: none;
}

.grid figure figcaption,
.grid figure figcaption > a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* Anchor will cover the whole item by default */
/* For some effects it will show as a button */
.grid figure figcaption > a {
	z-index: 1000;
	text-indent: 200%;
	white-space: nowrap;
	font-size: 0;
	opacity: 0;
}

.grid figure h3 {
    word-spacing: -0.15em;
    font-size: 1.5em;
    margin-top: 18%;
    color: #FFF;
    font-weight: 600;
}

.grid figure h2 span {
	font-weight: 800;
}


/*-----------------*/
/***** Apollo *****/
/*-----------------*/


figure.effect-apollo img {
	opacity: 0.95;
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	transition: opacity 0.35s, transform 0.35s;
	-webkit-transform: scale3d(1.05,1.05,1);
	transform: scale3d(1.05,1.05,1);
}

figure.effect-apollo figcaption::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    content: '';
    -webkit-transition: -webkit-transform 0.6s;
    transition: transform 0.6s;
    -webkit-transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,45deg) translate3d(0,-100%,0);
    transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,45deg) translate3d(0,-100%,0);
}


figure.effect-apollo:hover img {
	opacity: 0.6;
	-webkit-transform: scale3d(1,1,1);
	transform: scale3d(1,1,1);
}

figure.effect-apollo:hover figcaption::before {
	-webkit-transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,45deg) translate3d(0,100%,0);
	transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,45deg) translate3d(0,100%,0);
}

figure.effect-apollo:hover p {
	opacity: 1;
	-webkit-transition-delay: 0.1s;
	transition-delay: 0.1s;
}
/*-- //gallery --*/
/*-- contact --*/
.contact{
    background: #f7f7f7;	
}
.w3layouts-contact-form-top h3,.contact-form-top h3,.w3agile-map h3 {
    color: #212121;
    font-size: 1.5em;
    margin: 0 0 1em 0;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 4px;
    font-family: 'Raleway', sans-serif;
}
.w3layouts-contact-form-top p{
    font-size: .9em;
    color: #999;
    margin: 1em 0 0;
    line-height: 1.8em;
}
.agileits-contact-address{
	margin: 3em 0 0 0;
}
.w3layouts-contact-form-top p{
	margin:2em 0;
}
.agileits-contact-address ul {
    padding: 0;
    margin: 0;
}
.agileits-contact-address ul li {
    display: block;
    margin: 1em 0;
}
.agileits-contact-address ul li i.fa.fa-phone,.agileits-contact-address ul li i.fa.fa-map-marker {
    height: 40px;
    width: 40px;
    background: #82b62d;
    line-height: 40px;
    text-align: center;
    color: #FFF;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -o-border-radius: 50%;
    -ms-border-radius: 50%;
    transition: 0.5s all;
    -webkit-transition: 0.5s all;
    -moz-transition: 0.5s all;
    -o-transition: 0.5s all;
    -ms-transition: 0.5s all;
}
.agileits-contact-address ul li span {
    color: #999999;
    font-size: .875em;
    margin-left: 1em;
}
.agileits-contact-address ul li span a {
    color: #999999;
    text-decoration: none;
}
.agileits-contact-address ul li span a:hover{
    color: #82b62d;
}
.agileinfo-contact-form-grid{
    margin: 2em 0 0 0;
}
.agileinfo-contact-form-grid input[type="text"],.agileinfo-contact-form-grid input[type="email"] {
    display: inline-block;
    background: none;
    border: 1.5px solid #BBBBBB;
    width: 100%;
    outline: none;
    padding: 10px 15px 10px 15px;
    font-size: .9em;
    color: #BBBBBB;
    margin-bottom: 1.5em;
}
.agileinfo-contact-form-grid textarea {
    background: none;
    border: 1.5px solid #BBBBBB;
    width: 100%;
    display: block;
    height: 150px;
    outline: none;
    font-size: 0.9em;
    color: #BBBBBB;
    resize: none;
    padding: 10px 15px 10px 15px;
    margin-bottom: 1em;
}
.agileinfo-contact-form-grid button.btn1{
	color: #FFFFFF;
    font-size: .9em;
    text-decoration: none;
    padding: .5em 2em;
    background: #82b62d;
    text-transform: uppercase;
    font-weight: 600;
    text-align: center;
    border: solid 1px #82b62d;
    transition: 0.5s all;
    -webkit-transition: 0.5s all;
    -moz-transition: 0.5s all;
    -o-transition: 0.5s all;
    -ms-transition: 0.5s all;
}
.agileinfo-contact-form-grid button.btn1:hover{
    background: none;
    border: solid 1px #212121;
    color: #212121;
}
.w3agile-map {
    margin: 4em 0 0 0;
}
.w3agile-map iframe{
    border: none;
    min-height: 300px;
    width: 100%;
	margin:2em 0 0 0;
}
/*-- //contact --*/
/*-- single --*/
.agileits-single-img { padding: 0 15px; }
.agileits-single-img img{
	width:100%;
}
.agileits-single-img h4{
	color: #000000;
    font-size: 1.2em;
    margin: 1em 0;
    font-weight: 600;
    line-height: 1.5em;
    text-transform: capitalize;
}
.agileinfo-single-icons{
	margin:2em 0;
}
.agileinfo-single-icons ul{
	padding:0;
	margin:0;
}
.agileinfo-single-icons ul li{
	display: inline-block;
    color: #999999;
    font-size: .9em;
    margin-right: 1.5em;
}
.agileinfo-single-icons ul li:last-child{
	margin-right:0;
}
.agileinfo-single-icons ul li a{
    color: #999999;
	text-decoration:none;
}
.agileinfo-single-icons ul li span{
    margin-left: .5em;
}
.agileinfo-single-icons ul li span:hover{
    color: #82b62d;
}
.agileits-single-img p{
    color: #999999;
    font-size: .9em;
    line-height: 1.8em;
    margin: 0;
}
/*-- comments --*/
.agileits_three_comments{
    margin: 4em 0;
}
.agileits_three_comment_grid{
    padding:3em 0;
    border-bottom: 1px solid #dddddd;
    width: 100%;
}
.agileits_tom {
	float: left;
    border: 1px dotted #353535;
    padding: .5em;
    width: 10%;
}
.agileits_tom  img{
	width:100%;
}
.agileits_tom_right{
    float: left;
    width: 70%;
    margin-left: 3em;
}
.hardy {
    float: left;
}
.reply {
    float: left;
    margin-left: 10em;
    margin-top: .5em;
}
.reply a {
    background: #82b62d;
    border: solid 2px #82b62d;
    padding: .5em 2em;
    color: #fff;
    font-size: .9em;
    text-decoration: none;
}
.reply a:hover{
	background:none;
	color:#212121;
	border: solid 2px #212121;
	background:none;
}
.agileits_tom_right p.lorem {
    color: #999999;
    font-size: .9em;
    line-height: 1.8em;
    margin: 1em 0 0 0;
}
.agileits_three_comments h3,.w3_leave_comment h3{
    text-align: left;
    color: #212121;
    font-size: 1.5em;
    margin: 1em 0;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 4px;
    font-family: 'Raleway', sans-serif;
}
.hardy h4 {
    font-size: 1.2em;
    color: #000000;
    margin: 0;
    font-weight: 600;
}
.hardy p {
    color: #999999;
    margin: .5em 0 0;
    font-size: .9em;
}
.agileits_three_comment_grid:nth-child(2){
    margin:4em 0 0;
	padding-top:0 !important;
}
.agileits_three_comment_grid:last-child{
	border-bottom:none;
	padding-bottom:0 !important;
}
.agileits_three_comment_grid1{
	padding-left:5em;
}
/*-- //comments --*/
/*-- leave-comments --*/
.w3_leave_comment {
    width: 70%;
}
.w3_leave_comment form {
    margin: 3em 0 0;
}
.w3_leave_comment input[type="text"], .w3_leave_comment input[type="email"], .w3_leave_comment textarea {
    background: none;
    border: 1.5px solid #BBBBBB;
    width: 100%;
    outline: none;
    padding: 10px;
    font-size: .9em;
    color: #BBBBBB;
}
.w3_leave_comment input[type="email"], .w3_leave_comment textarea {
    margin: 1em 0;
}
.w3_leave_comment textarea {
    min-height: 200px;
    resize: none;
}
.w3_leave_comment input[type="submit"] {
    background: #82b62d;
    border: solid 2px #82b62d;
    padding: .5em 2em;
    color: #fff;
    font-size: .9em;
    text-decoration: none;
	text-transform: uppercase;
    font-weight: 600;
    transition: 0.5s all;
    -webkit-transition: 0.5s all;
    -moz-transition: 0.5s all;
    -o-transition: 0.5s all;
    -ms-transition: 0.5s all;
}
.w3_leave_comment input[type="submit"]:hover {
    border: solid 2px #212121;
    color: #212121;
    background: none;
	text-transform: uppercase;
    font-weight: 600;
}
/*-- //leave-comments --*/
/*-- //single --*/
/*-- to-top --*/
#toTop {
	display: none;
	text-decoration: none;
	position: fixed;
	bottom: 20px;
	right: 2%;
	overflow: hidden;
	z-index: 999; 
	width: 40px;
	height: 40px;
	border: none;
	text-indent: 100%;
	background: url(../images/arrow.png) no-repeat 0px 0px;
}
#toTopHover {
	width: 40px;
	height: 40px;
	display: block;
	overflow: hidden;
	float: right;
	opacity: 0;
	-moz-opacity: 0;
	filter: alpha(opacity=0);
}
/*-- //to-top --*/
/*-- responsive --*/
@media(max-width:1080px){
	.icon-box {
		padding: 8px 5px;
	}
}
@media(max-width:991px){
	.header-left {
		width: 33%;
	}
	.header-right {
		width: 67%;
	}
	.agileinfo-social-grids {
		margin-left: 1em;
	}
	.top-nav ul li {
		margin: 0 .5em;
	}
	.agileinfo-social-grids {
		margin-left: .5em;
	}
	.agileits-banner-info p {
		width: 65%;
	}
	.w3ls-welcome-img2 {
		margin: 0 0 2em 0 !important;
	}
	.agile-news-right {
		margin: 2em 0 0 0;
	}
	.w3-agile-news-info a span {
		display: inline-block;
	}
	.agile-footer-grid{
		margin:2em 0 0 0;
	}
	.agile-footer-grid:nth-child(1){
		margin:0;
	}
	.gallery-grid {
		width: 50%;
		float: left;
	}
	.contact-form-right {
		margin: 2em 0 0 0;
	}
}
@media(max-width:736px){
	.header-left {
		width: 34%;
	}
	.header-right {
		width: 65%;
	}
	.top-nav {
		width: 70%;
	}
	.navbar-toggle {
		float: none;
		margin-right: 0;
		margin-top: 0;
	}
	ul.nav.navbar-nav {
	    float: none;
	}
	.navbar-header {
		text-align: center;
	}
	.top-nav ul li {
		margin: .5em 0;
		float: none;
		display: block;
		text-align: center;
	}
	.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
		background: none;
	}
	.navbar-default .navbar-collapse, .navbar-default .navbar-form {
		background: rgba(0, 0, 0, 0.74);
		position: absolute;
		width: 100%;
		z-index: 99;
	}
	.top-nav ul li a {
		color: #ffffff !important;
	}
	.callbacks_nav.next {
		right: 0;
	}
	.services-right-grid:nth-child(2){
		margin:2em 0;
	}
	.wthree-top-grid:nth-child(2),.agile-choose-grid:nth-child(2),.team-grid:nth-child(2){
		margin:2em 0;
	}
}
@media(max-width:667px){
	.header-left {
		width: 40%;
	}
	.header-right {
		width: 60%;
	}
	.top-nav {
		width: 66%;
	}
	.reply {
		margin-left: 6em;
	}
}
@media(max-width:600px){
	.w3layouts-logo h1 a {
		font-size: .9em;
	}
	.top-nav {
		width: 48%;
	}
	.agileits-banner-info h3 {
		font-size: 4em;
	}
	.banner {
		padding: 0em 0 1em;
	}
	.w3layouts-banner-slider {
		margin: 5em 0;
	}
	.callbacks_tabs {
		top: 108%;
		left: 50%;
	}
	.reply {
		margin-left: 6em;
	}
}
@media(max-width:568px){
	.header-left {
		width: 42%;
	}
	.header-right {
		width: 58%;
	}
}
@media(max-width:480px){
	.header-left {
		width: 100%;
		float: none;
		text-align: center;
	}
	.w3layouts-logo {
		margin: 0;
	}
	.header-right {
		width: 100%;
		float: none;
	}
	.navbar-header {
		text-align: left;
	}
	.top-nav {
		width: 60%;
		margin: 0;
	}
	.w3-header-top {
		text-align: center;
	}
	.w3-agile-news-info a {
		font-size: 1.5em;
	}
	.agileits-banner-info p {
		width: 75%;
	}
	.welcome, .services, .news, .newsletter, .footer, .codes, .typography, .contact {
		padding: 30px 0;
	}
	.w3-welcome-grids, .agileits-services, .wthree-news-grids, .w3-agileits-newsletter, .agileinfo-top-grids {
		margin: 2em 0 0 0;
	}
	.w3l-heading h2, .w3l-heading h3, .agileits-about-top-heading h3 {
		font-size: 2em;
	}
	.subscribe-grid {
		width: 90%;
	}
	.batata,.w3-agileits-choose,.team {
		padding: 30px 0;
	}
	.agile-choose-grids,.team-grids,.w3agile-map {
		margin: 2em 0 0 0;
	}
	h3.agileits-icons-title {
		font-size: 1.5em;
	}
	.agileits_three_comment_grid1 {
		padding-left: 1em;
	}
	.agileits_tom {
		width: 20%;
	}
	.agileits_tom_right {
		margin-left: 1em;
	}
	.agileits_three_comments {
		margin: 2em 0;
	}
	.w3_leave_comment {
		width: 100%;
	}
}
@media(max-width:414px){
	.agileits-banner-info h3 {
		font-size: 3em;
	}
	.w3layouts-banner-slider {
		margin: 3em 0;
	}
	.agileits-banner-info p {
		width: 77%;
	}
	.banner {
		background: url(../images/1.jpg) no-repeat -197px 0px;
		background-size: cover;
	}
	.about-banner {
		padding: 0 !important;
		background: url(../images/1.jpg) no-repeat 0px 0px !important;
		background-size: cover !important;
	}
	.subscribe-grid input[type="text"] {
		padding: .5em;
	}
	.subscribe-grid button.btn1 {
		width: 50px;
		height: 37px;
	}
	.w3l-heading h2, .w3l-heading h3, .agileits-about-top-heading h3 {
		font-size: 1.5em;
	}
	.icons .bs-glyphicons li {
		width: 31.33%;
	}
	.w3ls-heading h2 {
		font-size: 2em;
	}
	.w3agile-map iframe {
		margin: 0em 0 0 0;
	}
}
@media(max-width:384px){
	.callbacks_nav {
		bottom: 6px;
	}
	.agileits-banner-info p {
		width: 95%;
	}
	.w3-agile-news-info {
		margin: 1em 0 1em 2em;
	}
	h3.hdg {
		margin: 0px 0 15px;
	}
	.agileits-contact-address {
		margin: 2em 0 0 0;
	}
	.w3layouts-contact-form-top h3, .contact-form-top h3, .w3agile-map h3 {
		letter-spacing: 2px;
	}
	.agileits_three_comments h3, .w3_leave_comment h3 {
		font-size: 1.2em;
	}
	.reply {
		margin-left: 1em;
	}
}
@media(max-width:375px){
	.gallery-grid {
		width: 100%;
		float: none;
	}
}
@media(max-width:320px){
	.w3layouts-logo h1 a {
		font-size: .8em;
	}
	.top-nav {
		width: 54%;
	}
	.agileits-banner-info h3 {
		font-size: 2em;
	}
	.w3layouts-banner-slider {
		margin: 2em 0;
	}
	.agileits-banner-info p {
		width: 100%;
		margin: .5em auto 0;
	}
	.callbacks_tabs {
		top: 102%;
		left: 50%;
	}
	.agileits-banner-info h6 {
		margin: 0 0 .5em 0;
	}
	.w3ls-welcome-img2 {
		padding: 0;
	}
	.w3-welcome-left {
		padding: 0;
	}
	.services-right-grid {
		text-align: center;
		padding: 0;
	}
	.w3ls-welcome-img1 {
		padding: 0;
	}
	.agile-news-left {
		padding: 0;
	}
	.w3l-heading h2, .w3l-heading h3, .agileits-about-top-heading h3 {
		font-size: 1.2em;
		letter-spacing: 6px;
	}
	.w3ls-heading h2 {
		font-size: 1.5em;
	}
	.w3layouts-contact-form-top h3, .contact-form-top h3, .w3agile-map h3 {
		font-size: 1.2em;
	}
	.w3agile-map iframe {
		min-height: 200px;
	}
	.reply a {
		padding: .4em 1em;
	}
	.agileits_three_comment_grid1 {
		padding-left: 0em;
	}
	.agileits_three_comments h3, .w3_leave_comment h3 {
		letter-spacing: 2px;
	}
	.w3_leave_comment form {
		margin: 1em 0 0;
	}
	.agileits-single-img h4 {
		font-size: 1em;
	}
}
/*-- //responsive --*/
/* aboutus 视频自适应 */
.article-body video { width: 100% !important; height: auto !important; display: block; border-radius: 6px; }

/* ===== 统一内容区间距：补齐 Bootstrap 列 padding 的 15px，使直接放在 .container 下的内容行与 Bootstrap 栅格列（col-*）的边距一致 ===== */
.batata .container > .article-body,
.batata .container > .markdown-body { padding: 0 15px; }
.masonry-grid { padding: 0 15px; }
.timeline-wrap { padding: 0 15px; }
.batata .container > .agileits_three_comments,
.batata .container > .w3_leave_comment { padding: 0 15px; }
.batata .container > .agileinfo-single-icons,
.batata .container > .callbacks_container { padding: 0 15px; }
.article-rss { margin: 24px 15px 0; }
.cta-section { margin-left: 15px; margin-right: 15px; }
.row.product-grid { margin-left: 0; margin-right: 0; }
