/* [优化] 定义全新的科技感色彩变量 */
:root {
    --color-dark-bg: #0A0F1E;
    --color-card-bg: #11182B;
    --color-primary: #00A9FF;
    --color-text: #E0E0E0;
    --color-text-muted: #8892B0;
    --color-border: rgba(0, 169, 255, 0.2);
}

/* [优化] 使用新的Poppins字体和深邃的渐变背景 */
body { 
    color: var(--color-text-muted); 
    font-size: 15px; /* 稍微增大字体，提升阅读性 */
    font-weight: 400; 
    line-height: 1.7; 
    font-family: "Poppins", "Hind", sans-serif; 
    background-color: var(--color-dark-bg);
    background-image: radial-gradient(ellipse at top, #1b2735 0%, #090a0f 100%);
}
h1, h2, h3, h4, h5, h6 { 
    color: var(--color-text); 
    font-weight: 600; 
    line-height: 1.4; 
}
a { color: var(--color-primary); text-decoration: none; transition: all 0.3s ease; }
a:hover, a:focus { color: #fff; text-decoration: none; outline: none; }

.content-lg { padding-top: 100px; padding-bottom: 100px; }
.margin-b-0 { margin-bottom: 0 !important; }
.margin-b-5 { margin-bottom: 5px !important; }
.margin-b-30 { margin-bottom: 30px !important; }
.margin-b-60 { margin-bottom: 60px !important; }
.sm-margin-b-30 { margin-bottom: 30px; }
.md-margin-b-4 { margin-bottom: 4px; }
.text-right { text-align: right; }
.sm-text-left { text-align: left; }
.fweight-700 { font-weight: 700; }
.full-width { width: 100%; }
.img-responsive { display: block; max-width: 100%; height: auto; }

/* [优化] 玻璃拟态效果的导航栏 */
.header { 
    background: rgba(17, 24, 43, 0.7);
    backdrop-filter: blur(10px);
    position: fixed; top: 0; right: 0; left: 0; z-index: 1001; 
    border-bottom: 1px solid var(--color-border);
    box-shadow: none;
}
.navbar { border: none; background: transparent; }
.navbar-fixed-top .navbar-collapse { max-height: 100vh; }
.navbar-toggle { border: none; background: transparent !important; margin-top: 20px; }
.navbar-toggle .toggle-icon { background: #fff; height: 2px; width: 20px; display: block; margin-bottom: 4px; }
.logo { padding: 10px 0; }
.logo-wrap { display: block; }
.logo-img { max-height: 40px; }
.logo-img-active { display: none; }
.nav-item-child { font-size: 14px; font-weight: 600; text-transform: uppercase; }
.navbar-nav-right > li > a { padding: 15px 18px; color: var(--color-text); }
.navbar-nav-right > li > a:hover, .navbar-nav-right > li.active > a { color: var(--color-primary); }

.header-fixed .header .logo-img-main { display: none; }
.header-fixed .header .logo-img-active { display: block; }

/* [优化] 英雄区域 - 使用艺术字体 */
.promo-block { display: flex; align-items: center; min-height: 100vh; }
.parallax-window { background: transparent; }
.promo-block .col-sm-6 { text-align: center; }
.promo-block-divider { border-left: none; padding-left: 0; margin-bottom: 40px; display: inline-block; }

/* [核心修正] 强制为英雄区域设置必应每日壁纸背景 */
#hero-background {
    background-image: url('https://bing.img.run/1920x1080.php');
    background-size: cover;
    background-position: center center;
}
/* [核心] 替换主标题为艺术字体 Orbitron */
.promo-block-title { 
    font-family: 'Orbitron', sans-serif;
    font-size: 4rem; 
    font-weight: 700; 
    text-transform: uppercase; 
    color: #fff;
    text-shadow: 0 0 15px rgba(0, 169, 255, 0.5);
}
.promo-block-text { font-size: 1.1rem; color: var(--color-text-muted); }
.social-icons { display: inline-block; color: var(--color-text-muted); font-size: 20px; width: 45px; height: 45px; text-align: center; line-height: 45px; border-radius: 50%; border: 1px solid var(--color-border); transition: all 0.3s; margin: 0 8px; }
.social-icons:hover { background: var(--color-primary); color: #fff; border-color: var(--color-primary); box-shadow: 0 0 15px rgba(0, 169, 255, 0.5); }

/* [优化] 统一深色背景和样式 */
#about, #work { background-color: transparent; }
#about h2, #work h2 { font-size: 2rem; color: var(--color-text); }
#about p, #work p { color: var(--color-text-muted); }
.progress-box { margin-bottom: 25px; }
.progress-box h5 { font-size: 14px; font-weight: 600; text-transform: uppercase; color: var(--color-text); }
.progress { height: 8px; background: var(--color-card-bg); box-shadow: none; border-radius: 5px; }
.progress-bar { background: var(--color-primary); }
.color-heading { color: var(--color-text); }
/* assets/css/layout.css */

/* (新增) 技能矩阵样式 */
.skill-matrix-title {
    font-size: 1.8rem;
    color: var(--color-text);
    margin-bottom: 30px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--color-border);
}

.skill-matrix {
    display: grid;
    grid-template-columns: 1fr; /* 移动端默认单列 */
    gap: 30px;
}

.skill-item {
    background-color: var(--color-card-bg);
    padding: 25px;
    border-radius: 8px;
    border: 1px solid var(--color-border);
}

.skill-header {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}

.skill-icon {
    font-size: 1.5rem;
    color: var(--color-primary);
    margin-right: 15px;
}

.skill-header h4 {
    margin: 0;
    font-size: 1.2rem;
    color: var(--color-text);
}

.skill-description {
    margin: 0;
    color: var(--color-text-muted);
    font-size: 0.95rem;
}

/* 在平板及以上设备上变为两列布局 */
@media (min-width: 768px) {
    .skill-matrix {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* [优化] 卡片增加辉光效果 */
.bg-color-dark { background: #11182B; border-top: 1px solid var(--color-border); border-bottom: 1px solid var(--color-border); }
.service { position: relative; padding: 40px 30px; background: var(--color-card-bg); border: 1px solid var(--color-border); transition: all 0.3s ease; height: 100%; border-radius: 8px; }
.service-element { margin-bottom: 25px; }
.service-icon { font-size: 30px; color: var(--color-primary); }
.service-info h3 { font-size: 1.2rem; font-weight: 600; text-transform: uppercase; color: var(--color-text); }
.service-info p { color: var(--color-text-muted); }
.content-wrapper-link { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; border-radius: 8px;}
.service:hover { transform: translateY(-5px); box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3); border-color: var(--color-primary); }
.service.bg-color-base { background: var(--color-primary); border-color: var(--color-primary); }
.service.bg-color-base:hover { background-color: #0095e0; }
.color-white { color: #fff !important; }

/* [优化] 弹窗和网格样式 */
.masonry-grid-item { padding: 8px; }
.work { position: relative; overflow: hidden; border-radius: 8px; }
.work-overlay { position: relative; }
.work:before { content: '查看详情'; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(17, 24, 43, 0.8); opacity: 0; transition: all 0.5s; z-index: 1; display: flex; justify-content: center; align-items: center; font-size: 1.2rem; color: #fff; font-weight: 600; }
.work:hover:before { opacity: 1; }
.hidden-popups { display: none; }
.work-popup-content { padding: 40px; background: #1a223a; max-width: 600px; margin: 40px auto; position: relative; color: var(--color-text-muted); border-radius: 8px; border: 1px solid var(--color-border); }
.work-popup-content h3 { color: #fff; }
.btn-link { color: var(--color-primary); font-weight: 600; text-transform: uppercase; display: inline-block; margin-top: 20px; }
.mfp-bg { background: rgba(10, 15, 30, 0.9); backdrop-filter: blur(5px); }
.mfp-close { color: #fff !important; font-size: 30px; }

/* 联系和页脚 */
#contact { background: #11182B; border-top: 1px solid var(--color-border); }
#contact h5 { font-size: 14px; font-weight: 600; color: #fff; }
#contact a { color: var(--color-text-muted); }
#contact a:hover { color: var(--color-primary); }

.footer { padding: 40px 0; background: #0A0F1E; color: #a0a0a0; border-top: 1px solid var(--color-border); }
.footer-logo { max-height: 40px; }
.footer p { font-size: 13px; }
.footer a { color: var(--color-primary); }

.back-to-top { position: fixed; bottom: 20px; right: 20px; z-index: 1000; display: none; color: #fff; background: var(--color-primary); width: 40px; height: 40px; text-align: center; line-height: 40px; border-radius: 50%; }

/* 响应式 */
@media (max-width: 991px) {
    .sm-margin-b-30 { margin-bottom: 30px; }
    .sm-text-left { text-align: left !important; }
}
@media (max-width: 767px) {
    .navbar-nav-right > li > a { padding: 15px 10px; }
    .text-right.sm-text-left { text-align: left !important; }
    .promo-block-title { font-size: 2.5rem; }
    .promo-block .col-sm-6 { text-align: center; }
}
/* [新增] 粒子动画背景样式 */
#particles-js {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1; /* 关键：将画布置于所有内容的下方 */
    background-color: #1c1c1c; /* 确保背景色与body一致 */
}
/* Language Toggle Switch */
.language-toggle {
  position: fixed;
  top: 20px;
  right: 25px;
  z-index: 2000; /* 确保在最顶层，不会被其他元素遮挡 */
  width: 70px;
  height: 34px;
  background-color: #007bff; /* 默认蓝色背景 */
  border-radius: 34px; /* 使其变为椭圆形 */
  cursor: pointer;
  transition: background-color 0.3s ease;
  display: flex;
  align-items: center;
  padding: 4px;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
  text-decoration: none;
}

/* 切换按钮内部的白色圆形滑块 */
.language-toggle span {
  width: 26px;
  height: 26px;
  background-color: white;
  border-radius: 50%;
  display: block;
  transition: transform 0.3s ease;
}

/* 椭圆轨道内的文字标签 (中 / EN) */
.language-toggle::before,
.language-toggle::after {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-family: 'Poppins', sans-serif;
  font-size: 12px;
  font-weight: 600;
  color: white;
  user-select: none; /* 防止用户选中文字 */
}

.language-toggle::before {
  content: '中';
  left: 10px;
}

.language-toggle::after {
  content: 'EN';
  right: 10px;
}

/* 当语言为中文时的状态 (滑块在左侧) */
.language-toggle.lang-zh span {
  transform: translateX(0);
}
.language-toggle.lang-zh {
  background-color: #007bff; /* 蓝色 */
}

/* 当语言为英文时的状态 (滑块移动到右侧) */
.language-toggle.lang-en span {
  transform: translateX(32px);
}
.language-toggle.lang-en {
  background-color: #28a745; /* 绿色 */
}