body {
      background-color: #1e222b; 
      margin: 0;
      padding: 0 0 120px 0; 
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
      color: #e2e8f0;
    }
    
    .banner-container {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      margin: 0;
      padding: 10px 0;
      background-color: #16191f; 
      box-sizing: border-box;
    }
    
    .fixed-bottom {
      position: fixed;
      bottom: 0;
      left: 0;
      width: 100%;
      z-index: 999;
      box-shadow: 0 -4px 25px rgba(0, 0, 0, 0.5);
      padding: 12px 8px;
    }
    
    .banner-container a {
      display: block;
      margin: 0 6px;
      background-color: #242b35;
      border-radius: 12px;
      overflow: hidden;
      cursor: pointer;
      box-shadow: 0 4px 10px rgba(0,0,0,0.3);
      transition: transform 0.2s cubic-bezier(0.25, 0.8, 0.25, 1), filter 0.2s ease, box-shadow 0.2s ease;
      box-sizing: border-box;
    }
    .banner-container a:hover {
      transform: translateY(-5px);
      filter: brightness(1.2) contrast(1.05);
      box-shadow: 0 8px 20px rgba(6, 182, 212, 0.4);
    }
    .banner-container img {
      display: block;
      width: 100%;
      height: 45px;
      border: 0;
      object-fit: cover;
      border-radius: 12px;
    }
    .banner-container a img {
      border: 2px solid #06b6d4;
      box-sizing: border-box;
      transition: border-color 0.2s ease;
    }
    .banner-container a:hover img {
      border-color: #22d3ee;
    }
    
    .banner-container .top-link { width: 20%; }
    .banner-container .side-link { width: 30%; }
    .banner-container .mid-link { width: 40%; }
    .banner-container .mid-img { height: 45px; }
    
    .split-container {
      display: grid;
      grid-template-columns: 1fr 1fr;
      min-height: calc(100vh - 185px); 
      width: 100%;
      box-sizing: border-box;
    }
    
    .left-graphic-pane {
      display: flex;
      flex-direction: column;
      justify-content: center;
      gap: 24px;
      padding: 40px;
      background-color: #16191f;
    }
    .pane-img-card {
      border-radius: 12px;
      overflow: hidden;
      border: 1px solid #2d3748;
      box-shadow: 0 10px 30px rgba(0,0,0,0.4);
      width: 100%;
    }
    .pane-img-card img {
      width: 100%;
      height: auto;
      display: block;
    }
    
    .right-text-pane {
      padding: 60px 48px;
      overflow-y: auto;
      max-width: 680px;
    }
    
    .article-title {
      font-size: 2.5rem;
      color: #ffffff;
      margin: 0 0 12px 0;
      font-weight: 800;
      letter-spacing: -0.8px;
      line-height: 1.2;
    }
    .article-meta {
      font-size: 0.95rem;
      color: #a0aec0;
      margin-bottom: 35px;
      border-bottom: 1px solid #2d3748;
      padding-bottom: 20px;
    }
    .article-meta .author { font-weight: 600; color: #f7fafc; }
    .article-meta .divider { margin: 0 10px; color: #4a5568; }
    p {
      font-size: 1.15rem;
      line-height: 1.75;
      margin: 0 0 24px 0;
      color: #cbd5e1;
    }
    .content-link {
      color: #06b6d4;
      text-decoration: none;
      font-weight: 500;
      border-bottom: 1px solid rgba(6, 182, 212, 0.3);
      padding-bottom: 2px;
      transition: color 0.2s ease, border-color 0.2s ease, text-shadow 0.2s ease;
    }
    .content-link:hover {
      color: #22d3ee;
      border-bottom-color: #22d3ee;
      text-shadow: 0 0 8px rgba(34, 211, 238, 0.4);
    }
    .blockquote-container {
      background: #252b36;
      border-left: 4px solid #06b6d4;
      margin: 40px 0;
      padding: 24px 28px;
      border-radius: 0 8px 8px 0;
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
    }
    .blockquote-text {
      font-size: 1.25rem !important;
      line-height: 1.6 !important;
      color: #ffffff !important;
      margin: 0 0 12px 0 !important;
      font-style: italic;
    }
    .blockquote-source {
      font-size: 0.9rem;
      text-align: right;
      font-style: normal;
      font-weight: 600;
      color: #94a3b8;
      text-transform: uppercase;
      letter-spacing: 1px;
      display: block;
    }
    .text-center { text-align: center; }
    
    @media (max-width: 768px) {
      .split-container {
        grid-template-columns: 1fr; 
      }
      .left-graphic-pane {
        order: 1; 
        padding: 24px;
      }
      .right-text-pane {
        order: 2; 
        padding: 32px 24px;
      }
    }