/* ===== AI 生产力平台 — 公共样式 ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --blue:#1E40AF;--blue-light:#3B82F6;--blue-bg:#EFF6FF;--blue-dark:#1E3A5F;
  --purple:#7C3AED;--purple-light:#A78BFA;--purple-bg:#FAF5FF;
  --orange:#EA580C;--orange-light:#FB923C;--orange-bg:#FFF7ED;
  --green:#16A34A;--green-light:#4ADE80;--green-bg:#F0FDF4;
  --teal:#0D9488;--teal-bg:#F0FDFA;
  --gray-50:#F8FAFC;--gray-100:#F1F5F9;--gray-200:#E2E8F0;--gray-300:#CBD5E1;
  --gray-400:#94A3B8;--gray-500:#64748B;--gray-600:#475569;--gray-700:#334155;
  --gray-800:#1E293B;--gray-900:#0F172A;
  --radius:12px;--radius-lg:16px;--radius-xl:24px;
}
html{scroll-behavior:smooth}
body{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans SC","PingFang SC","Microsoft YaHei","Noto Color Emoji","Apple Color Emoji","Segoe UI Emoji",sans-serif;
  color:var(--gray-800);background:#fff;line-height:1.6;-webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button{cursor:pointer;border:none;font-family:inherit}

/* ===== Nav ===== */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  background:rgba(255,255,255,.92);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-bottom:1px solid var(--gray-200);height:64px;
  display:flex;align-items:center;
}
.nav-inner{
  max-width:1200px;width:100%;margin:0 auto;padding:0 2rem;
  display:flex;align-items:center;justify-content:space-between;
}
.nav-logo{display:flex;align-items:center;gap:10px;font-size:1.25rem;font-weight:700;color:var(--blue);flex-shrink:0}
.nav-logo svg{width:36px;height:36px}
.nav-links{display:flex;align-items:center;list-style:none;height:64px}
.nav-links>li{height:100%;display:flex;align-items:center}
.nav-links>li>a{
  display:flex;align-items:center;gap:4px;height:100%;padding:0 16px;
  font-size:.9rem;font-weight:500;color:var(--gray-600);white-space:nowrap;
  transition:color .2s;cursor:pointer;position:relative;
}
.nav-links>li>a:hover,.nav-links>li>a.active{color:var(--blue)}
.nav-links>li>a.active::after{
  content:'';position:absolute;bottom:0;left:16px;right:16px;height:2px;
  background:var(--blue);border-radius:1px;
}
.nav-links>li>a .arrow{font-size:.6rem;transition:transform .2s;opacity:.5}

/* Mega Menu */
.mega-overlay{
  position:fixed;top:64px;left:0;right:0;bottom:0;
  background:rgba(15,23,42,.25);z-index:98;
  opacity:0;visibility:hidden;transition:all .2s;
}
.mega-overlay.show{opacity:1;visibility:visible}
.mega-panel{
  position:fixed;top:64px;left:0;right:0;z-index:99;
  background:#fff;border-bottom:1px solid var(--gray-200);
  box-shadow:0 20px 50px rgba(0,0,0,.12);
  opacity:0;visibility:hidden;transform:translateY(-12px);
  transition:all .25s ease;
}
.mega-panel.show{opacity:1;visibility:visible;transform:translateY(0)}
.mega-inner{
  max-width:1200px;margin:0 auto;padding:36px 2rem;
  display:flex;gap:32px;
}
.mega-col{flex:1;min-width:0}
.mega-col.wide{flex:1.3}
.mega-col-title{
  font-size:.7rem;font-weight:700;color:var(--gray-400);
  text-transform:uppercase;letter-spacing:.06em;
  padding-bottom:10px;margin-bottom:12px;
  border-bottom:1px solid var(--gray-100);
}
.mega-items{display:flex;flex-direction:column;gap:1px}
.mega-item{
  display:flex;align-items:center;gap:12px;
  padding:10px 12px;border-radius:10px;
  font-size:.84rem;color:var(--gray-700);
  transition:all .18s ease;cursor:pointer;
  border:1px solid transparent;
}
.mega-item:hover{
  background:#F0F5FF;
  border-color:var(--blue-light);
  color:var(--blue);
  transform:translateY(-1px);
  box-shadow:0 4px 12px rgba(30,64,175,.08);
}
.mega-item .mega-icon{
  width:38px;height:38px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  font-size:1.05rem;flex-shrink:0;
  background:linear-gradient(135deg,#1E40AF,#3B82F6);
  color:#fff;
  box-shadow:0 3px 8px rgba(30,64,175,.18);
}
.mega-item .mega-txt{display:flex;flex-direction:column;line-height:1.35;min-width:0}
.mega-item .mega-name{font-weight:600;font-size:.86rem}
.mega-item .mega-desc{font-size:.72rem;color:var(--gray-400);line-height:1.35;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mega-item:hover .mega-desc{color:var(--blue-light)}
.mega-badge{
  font-size:.62rem;font-weight:700;padding:2px 7px;border-radius:10px;
  margin-left:auto;flex-shrink:0;
}
.mega-badge-hot{background:#FEF2F2;color:#DC2626}
.mega-badge-new{background:var(--blue-bg);color:var(--blue)}
.mega-badge-beta{background:var(--purple-bg);color:var(--purple)}
.mega-featured{
  background:var(--gray-50);border-radius:var(--radius);
  padding:20px 24px;display:flex;flex-direction:column;gap:12px;
}
.mega-featured h4{font-size:.85rem;font-weight:700;color:var(--gray-800)}
.mega-featured p{font-size:.76rem;color:var(--gray-500);line-height:1.6}
.mega-featured .mega-cta{
  margin-top:8px;display:inline-flex;align-items:center;gap:6px;
  padding:8px 18px;background:var(--blue);color:#fff;border-radius:8px;
  font-size:.8rem;font-weight:600;transition:all .2s;width:fit-content;
}
.mega-featured .mega-cta:hover{background:var(--blue-light)}

/* Mobile Menu */
.hamburger{display:none;background:none;border:none;cursor:pointer;padding:8px;flex-shrink:0}
.hamburger span{display:block;width:22px;height:2px;background:var(--gray-700);margin:5px 0;border-radius:1px;transition:all .3s}
.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.hamburger.open span:nth-child(2){opacity:0}
.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}
.mobile-menu{
  position:fixed;top:64px;left:0;right:0;bottom:0;z-index:97;
  background:rgba(15,23,42,.5);
  opacity:0;visibility:hidden;transition:all .3s;
}
.mobile-menu.show{opacity:1;visibility:visible}
.mobile-menu-panel{
  position:fixed;top:64px;right:0;bottom:0;z-index:97;
  width:280px;background:#fff;box-shadow:-10px 0 40px rgba(0,0,0,.15);
  transform:translateX(100%);transition:transform .3s ease;
  overflow-y:auto;padding:20px;
}
.mobile-menu-panel.show{transform:translateX(0)}
.mobile-menu-panel a,.mobile-menu-panel .mobile-section-title{
  display:block;padding:12px 16px;border-radius:8px;font-size:.9rem;
  color:var(--gray-700);transition:all .15s;
}
.mobile-menu-panel a:hover{background:var(--blue-bg);color:var(--blue)}
.mobile-menu-panel .mobile-section-title{
  font-size:.7rem;font-weight:700;color:var(--gray-400);
  text-transform:uppercase;letter-spacing:.06em;
  margin-top:16px;padding-bottom:4px;
}

/* Buttons */
.nav-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 20px;border-radius:8px;font-size:.875rem;font-weight:600;transition:all .2s}
.btn-ghost{background:transparent;color:var(--gray-600)}
.btn-ghost:hover{color:var(--blue);background:var(--blue-bg)}
.btn-primary{background:var(--blue);color:#fff}
.btn-primary:hover{background:var(--blue-light)}
.btn-white{background:#fff;color:var(--blue);border:1px solid var(--gray-200)}
.btn-white:hover{border-color:var(--blue)}
.btn-lg{padding:12px 28px;font-size:1rem;border-radius:10px}
.btn-outline{background:transparent;color:var(--blue);border:1.5px solid var(--blue)}
.btn-outline:hover{background:var(--blue);color:#fff}

/* Sections */
.section-label{display:inline-block;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:4px 12px;border-radius:20px;margin-bottom:12px}
.section-title{font-size:2.25rem;font-weight:800;color:var(--gray-900);margin-bottom:12px;letter-spacing:-.02em}
.section-desc{font-size:1.05rem;color:var(--gray-500);max-width:600px;margin-bottom:40px}

/* Footer */
.footer{background:var(--gray-900);color:var(--gray-400);padding:60px 2rem 32px}
.footer-inner{max-width:1200px;margin:0 auto}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px}
.footer-col h4{color:#fff;font-size:.9rem;font-weight:700;margin-bottom:16px}
.footer-col a,.footer-col p{font-size:.8rem;display:block;margin-bottom:8px;transition:color .2s}
.footer-col a:hover{color:#fff}
.footer-logo{font-size:1.25rem;font-weight:700;color:#fff;margin-bottom:12px}
.footer-bottom{border-top:1px solid var(--gray-700);padding-top:24px;display:flex;justify-content:space-between;font-size:.78rem}

/* Page Header (子页面通用) */
.page-header{padding:120px 2rem 60px;max-width:1200px;margin:0 auto;text-align:center}
.page-header .page-icon{font-size:3rem;margin-bottom:16px}
.page-header h1{font-size:2.5rem;font-weight:900;color:var(--gray-900);margin-bottom:12px;letter-spacing:-.02em}
.page-header .page-desc{font-size:1.05rem;color:var(--gray-500);max-width:560px;margin:0 auto}

/* Page Container */
.page-container{max-width:1200px;margin:0 auto;padding:0 2rem 80px}

/* Scroll Animations */
.fade-up{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}
.fade-up.visible{opacity:1;transform:translateY(0)}
.fade-up-delay-1{transition-delay:.1s}
.fade-up-delay-2{transition-delay:.2s}
.fade-up-delay-3{transition-delay:.3s}
.fade-up-delay-4{transition-delay:.4s}
.fade-up-delay-5{transition-delay:.5s}
.fade-up-delay-6{transition-delay:.6s}

/* Loading Transition */
.page-loader{
  position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;
  background:#fff;display:flex;align-items:center;justify-content:center;
  opacity:0;visibility:hidden;transition:opacity .15s ease,visibility .15s ease;
}
.page-loader.show{opacity:1;visibility:visible}
.page-loader .loader-spinner{
  width:40px;height:40px;border:3px solid var(--gray-200);
  border-top-color:var(--blue);border-radius:50%;animation:spin .6s linear infinite;
}
@keyframes spin{to{transform:rotate(360deg)}}

/* Back to top */
.back-to-top{
  position:fixed;bottom:32px;right:32px;z-index:90;
  width:44px;height:44px;border-radius:50%;background:var(--blue);
  color:#fff;font-size:1.2rem;display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 16px rgba(30,64,175,.3);cursor:pointer;
  opacity:0;visibility:hidden;transition:all .3s;
}
.back-to-top.show{opacity:1;visibility:visible}
.back-to-top:hover{background:var(--blue-light);transform:translateY(-2px)}

/* ===== Responsive ===== */
@media (max-width:1024px){
  .mega-inner{flex-wrap:wrap;gap:24px}
  .mega-col{flex:1 1 45%}
  .footer-top{grid-template-columns:repeat(3,1fr)}
  .section-title{font-size:1.8rem}
  .page-header h1{font-size:2rem}
}
@media (max-width:768px){
  .nav-links{display:none}
  .hamburger{display:block}
  .nav-actions .btn-ghost{display:none}
  .footer-top{grid-template-columns:repeat(2,1fr)}
  .section-title{font-size:1.5rem}
  .section-desc{font-size:.95rem}
  .mega-panel{display:none!important}
  .mega-overlay{display:none!important}
  .back-to-top{bottom:20px;right:20px;width:38px;height:38px}
  .page-header{padding:100px 1rem 40px}
  .page-header h1{font-size:1.7rem}
}
@media (max-width:640px){
  .nav-inner{padding:0 1rem}
  .footer-top{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column;gap:8px;text-align:center}
  .page-header h1{font-size:1.5rem}
}
