 /* ====================================
           1. 全局与背景 (对齐控制台风格)
        ==================================== */
 :root {
     --primary: #00c8ff;
     --secondary: #0066ff;
     --bg-start: #1a1a1a;
     --bg-end: #2f2f2f;
     --text-main: #ffffff;
     --text-muted: #aaaaaa;
     --glass-border: rgba(255, 255, 255, 0.1);
 }

 .text-muted {
     color: var(--text-muted) !important;
 }

 body {
     background: linear-gradient(to right, var(--bg-start), var(--bg-end));
     color: var(--text-main);
     font-family: "Microsoft Yahei", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
     min-height: 100vh;
     overflow-x: hidden;
 }

 a {
     text-decoration: none;
     transition: all 0.3s;
 }

 /* ====================================
           2. 控制台通用组件提取
        ==================================== */
 .neon-card {
     position: relative;
     background: rgba(255, 255, 255, 0.07);
     border-radius: 12px;
     padding: 2.5rem 2rem;
     box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
     backdrop-filter: blur(8px);
     -webkit-backdrop-filter: blur(8px);
     border: none;
     color: #fff;
     transition: transform 0.4s ease, box-shadow 0.4s ease;
     height: 100%;
     z-index: 1;
 }

 .neon-card::before {
     content: "";
     position: absolute;
     top: -2px;
     left: -2px;
     right: -2px;
     bottom: -2px;
     border-radius: 14px;
     background: linear-gradient(135deg, var(--secondary), var(--primary));
     opacity: 0.5;
     z-index: -1;
     transition: opacity 0.4s;
 }

 .neon-card:hover {
     transform: translateY(-8px);
     box-shadow: 0 15px 35px rgba(0, 200, 255, 0.25);
 }

 .neon-card:hover::before {
     opacity: 0.9;
 }

 .btn-custom {
     padding: 0.7rem 1.8rem;
     border-radius: 8px;
     font-size: 1rem;
     font-weight: 600;
     cursor: pointer;
     transition: all 0.3s;
     color: #fff !important;
     border: none;
     text-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
     display: inline-flex;
     align-items: center;
     justify-content: center;
     gap: 8px;
 }

 .btn-custom:hover {
     box-shadow: 0 5px 15px rgba(255, 255, 255, 0.2);
     transform: translateY(-2px);
 }

 .btn-blue {
     background: linear-gradient(135deg, #3498db, #2980b9);
 }

 .btn-blue:hover {
     background: linear-gradient(135deg, #2980b9, #2471a3);
     box-shadow: 0 5px 20px rgba(52, 152, 219, 0.4);
 }

 .btn-green {
     background: linear-gradient(135deg, #2ecc71, #27ae60);
 }

 .btn-green:hover {
     background: linear-gradient(135deg, #27ae60, #219150);
     box-shadow: 0 5px 20px rgba(46, 204, 113, 0.4);
 }

 .btn-outline-glass {
     background: rgba(255, 255, 255, 0.05);
     border: 1px solid rgba(255, 255, 255, 0.2);
 }

 .btn-outline-glass:hover {
     background: rgba(255, 255, 255, 0.15);
     border-color: #fff;
 }

 .text-gradient {
     background: linear-gradient(135deg, var(--primary), #00ffcc);
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
 }

 /* ====================================
           3. 布局与结构样式
        ==================================== */
 .top-banner {
     background: linear-gradient(90deg, #ff007a, #7a00ff);
     color: #fff;
     text-align: center;
     padding: 8px 15px;
     font-size: 0.95rem;
     font-weight: bold;
     box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
     position: relative;
     z-index: 1040;
 }

 .navbar-glass {
     background: rgba(26, 26, 26, 0.7);
     backdrop-filter: blur(15px);
     -webkit-backdrop-filter: blur(15px);
     border-bottom: 1px solid rgba(255, 255, 255, 0.05);
     transition: all 0.3s;
 }

 .hero-section {
     padding: 8rem 0 5rem;
     position: relative;
     overflow: hidden;
 }

 .hero-glow {
     position: absolute;
     top: 50%;
     left: 50%;
     transform: translate(-50%, -50%);
     width: 800px;
     height: 800px;
     background: radial-gradient(circle, rgba(0, 200, 255, 0.1) 0%, transparent 60%);
     z-index: 0;
     pointer-events: none;
 }

 .pricing-price {
     font-size: 3.5rem;
     font-weight: 900;
     margin: 1rem 0;
     color: #fff;
     text-shadow: 0 0 15px rgba(0, 200, 255, 0.3);
 }

 /* 终端打字机动画 */
 .terminal-window {
     background: rgba(10, 12, 16, 0.9);
     border-radius: 12px;
     border: 1px solid rgba(255, 255, 255, 0.1);
     box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);
 }

 .terminal-header {
     background: rgba(255, 255, 255, 0.05);
     padding: 12px 16px;
     display: flex;
     align-items: center;
     border-bottom: 1px solid rgba(255, 255, 255, 0.05);
 }

 .terminal-dots {
     display: flex;
     gap: 8px;
 }

 .terminal-dot {
     width: 12px;
     height: 12px;
     border-radius: 50%;
 }

 .terminal-body {
     padding: 24px;
     color: #a3b8cc;
     line-height: 1.8;
     font-size: 0.9rem;
 }

 .line-hide {
     opacity: 0;
     animation: fadeInTerminal 0.1s forwards;
 }

 .l1 {
     animation-delay: 0.5s;
 }

 .l2 {
     animation-delay: 1.5s;
 }

 .l3 {
     animation-delay: 2.2s;
 }

 .l4 {
     animation-delay: 3.0s;
 }

 .l5 {
     animation-delay: 3.8s;
 }

 .l6 {
     animation-delay: 4.5s;
 }

 .l7 {
     animation-delay: 5.2s;
 }

 @keyframes fadeInTerminal {
     to {
         opacity: 1;
     }
 }

 .cursor-blink {
     display: inline-block;
     width: 8px;
     height: 15px;
     background: #fff;
     animation: blink 1s step-end infinite;
 }

 @keyframes blink {
     50% {
         opacity: 0;
     }
 }

 /* FAQ 手风琴重构 */
 .accordion-item {
     background: rgba(255, 255, 255, 0.05);
     border: 1px solid rgba(255, 255, 255, 0.1);
     border-radius: 10px !important;
     margin-bottom: 1rem;
     overflow: hidden;
 }

 .accordion-button {
     background: transparent !important;
     color: #fff !important;
     font-weight: 600;
     padding: 1.25rem 1.5rem;
     box-shadow: none !important;
 }

 .accordion-button:not(.collapsed) {
     color: var(--primary) !important;
     background: rgba(0, 200, 255, 0.05) !important;
 }

 .accordion-button::after {
     filter: invert(1);
 }

 .accordion-body {
     color: #ccc;
     line-height: 1.7;
     padding: 0 1.5rem 1.5rem;
     border-top: none;
 }

 /* 滚动浮现动画 */
 .fade-in-up {
     opacity: 0;
     transform: translateY(30px);
     transition: opacity 0.8s ease, transform 0.8s ease;
 }

 .fade-in-up.visible {
     opacity: 1;
     transform: translateY(0);
 }

 .delay-1 {
     transition-delay: 0.1s;
 }

 .delay-2 {
     transition-delay: 0.2s;
 }

 /* ====================================
           4. AI 悬浮窗现代化重制
        ==================================== */
 #ai-widget {
     position: fixed;
     bottom: 25px;
     right: 25px;
     z-index: 1050;
     display: flex;
     flex-direction: column;
     align-items: flex-end;
 }

 #ai-toggle {
     display: flex;
     align-items: center;
     gap: 8px;
     background: linear-gradient(135deg, #ffc107, #ff9800);
     color: #1a1a2e;
     border: none;
     border-radius: 50px;
     padding: 12px 24px;
     font-weight: bold;
     cursor: pointer;
     box-shadow: 0 4px 20px rgba(255, 193, 7, 0.4);
     transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
 }

 #ai-toggle:hover {
     transform: translateY(-4px) scale(1.05);
     box-shadow: 0 8px 25px rgba(255, 193, 7, 0.6);
 }

 #ai-panel {
     position: absolute;
     bottom: 80px;
     right: 0;
     width: 400px;
     height: 550px;
     background: rgba(26, 26, 26, 0.95);
     backdrop-filter: blur(15px);
     border: 1px solid rgba(255, 193, 7, 0.4);
     border-radius: 12px;
     box-shadow: 0 15px 40px rgba(0, 0, 0, 0.6);
     overflow: hidden;
     transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
     transform-origin: bottom right;
     opacity: 0;
     visibility: hidden;
     transform: scale(0.9) translateY(20px);
 }

 #ai-panel.show {
     opacity: 1;
     visibility: visible;
     transform: scale(1) translateY(0);
 }

 .ai-header {
     padding: 15px 20px;
     background: rgba(255, 193, 7, 0.15);
     border-bottom: 1px solid rgba(255, 193, 7, 0.2);
     display: flex;
     justify-content: space-between;
     align-items: center;
     color: #ffc107;
     font-weight: bold;
 }

 .ai-close {
     background: none;
     border: none;
     color: #fff;
     cursor: pointer;
     transition: color 0.3s;
     padding: 0;
 }

 .ai-close:hover {
     color: #ffc107;
 }

 #ai-iframe {
     width: 100%;
     height: calc(100% - 56px);
     border: none;
     background: #fff;
 }

 @media (max-width: 576px) {
     .hero-title {
         font-size: 2.5rem;
     }

     .hero-section {
         padding: 6rem 0 3rem;
         text-align: center;
     }

     #ai-panel {
         width: calc(100vw - 40px);
         height: 70vh;
         right: 0;
     }

     .terminal-window {
         display: none;
     }
 }