body {
      font-family: "Poppins", sans-serif;
      background-color: #0e1e40;
      color: #c0d6f9;
      overflow-x: hidden;
      min-height: 100vh;
      display: flex;
      flex-direction: column;
    }
    #sidebar-overlay {
      background: rgba(14, 30, 64, 0.85);
      backdrop-filter: blur(12px);
      position: fixed;
      inset: 0;
      z-index: 50;
      opacity: 0;
      pointer-events: none;
      transition: opacity 0.3s ease;
    }
    #sidebar-overlay.active {
      opacity: 1;
      pointer-events: auto;
    }
    #sidebar {
      background: rgba(14, 30, 64, 0.95);
      backdrop-filter: blur(14px);
      position: fixed;
      top: 0;
      left: 0;
      height: 100vh;
      width: 250px;
      max-width: 80vw;
      box-shadow: 0 0 25px rgba(59, 130, 246, 0.7);
      transform: translateX(-100%);
      transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
      z-index: 60;
      display: flex;
      flex-direction: column;
      padding-top: 5.5rem;
      padding-bottom: 3rem;
      border-right: 1px solid rgba(59, 130, 246, 0.3);
    }
    #sidebar.active {
      transform: translateX(0);
    }
    #sidebar ul {
      list-style: none;
      padding-left: 0;
      margin: 0;
      display: flex;
      flex-direction: column;
      gap: 1.5rem;
    }
    #sidebar ul li:first-child {
      margin-top: 2.5rem;
    }
    #sidebar ul li a {
      display: flex;
      align-items: center;
      gap: 1rem;
      font-weight: 600;
      font-size: 1.125rem;
      color: #93c5fd;
      text-decoration: none;
      padding: 0.75rem 1.25rem;
      border-radius: 0.5rem;
      transition: background-color 0.3s ease, color 0.3s ease;
      user-select: none;
    }
    #sidebar ul li a i {
      color: #3b82f6;
      font-size: 1.5rem;
      min-width: 28px;
      text-align: center;
    }
    #sidebar ul li a:hover,
    #sidebar ul li a:focus {
      background-color: rgba(59, 130, 246, 0.25);
      color: #bfdbfe;
      outline: none;
    }
    #hamburger-btn {
      position: fixed;
      top: 1rem;
      left: 1rem;
      z-index: 70;
      width: 44px;
      height: 44px;
      background: rgba(14, 30, 64, 0.85);
      backdrop-filter: blur(12px);
      border-radius: 0.5rem;
      display: flex;
      flex-direction: column;
      justify-content: center;
      gap: 7px;
      padding: 7px 9px;
      cursor: pointer;
      box-shadow: 0 0 10px rgba(59, 130, 246, 0.6);
      transition: background-color 0.3s ease;
      user-select: none;
    }
    #hamburger-btn:hover,
    #hamburger-btn:focus {
      background: rgba(59, 130, 246, 0.85);
      outline: none;
    }
    #hamburger-btn span {
      display: block;
      height: 3.5px;
      background-color: #93c5fd;
      border-radius: 2px;
      transition: all 0.3s ease;
    }
    #hamburger-btn.active span:nth-child(1) {
      transform: translateY(11px) rotate(45deg);
    }
    #hamburger-btn.active span:nth-child(2) {
      opacity: 0;
    }
    #hamburger-btn.active span:nth-child(3) {
      transform: translateY(-11px) rotate(-45deg);
    }
    main {
      padding: 4rem 1.5rem 3rem;
      max-width: 6xl;
      margin-left: 0;
      transition: margin-left 0.35s ease;
      flex-grow: 1;
      display: flex;
      flex-direction: column;
      gap: 3rem;
    }
    @media (min-width: 768px) {
      main.sidebar-open {
        margin-left: 250px;
      }
    }
    section h2 {
      margin-top: 3rem;
      margin-bottom: 1.5rem;
    }
    main::-webkit-scrollbar {
      width: 8px;
    }
    main::-webkit-scrollbar-thumb {
      background-color: rgba(59, 130, 246, 0.3);
      border-radius: 4px;
    }
    footer {
      border-top: 1px solid rgba(59, 130, 246, 0.4);
      padding: 1.5rem 1.5rem 3rem;
      background: rgba(14, 30, 64, 0.9);
      backdrop-filter: blur(12px);
      color: #93c5fd;
      text-align: center;
      font-size: 0.9rem;
      user-select: none;
      flex-shrink: 0;
    }
    footer .hashtags {
      display: flex;
      justify-content: center;
      gap: 1.25rem;
      flex-wrap: wrap;
      color: #60a5fa;
      margin-bottom: 1.5rem;
    }
    footer .hashtags span {
      background-color: rgba(59, 130, 246, 0.2);
      padding: 0.15rem 0.6rem;
      border-radius: 9999px;
      font-weight: 600;
      user-select: text;
    }
    footer .copyright {
      margin-top: 1rem;
      font-size: 0.75rem;
      color: #3b82f6;
      user-select: text;
    }
    .content-container {
      max-width: 900px;
      margin: 0 auto;
    }
    .list-titles {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
      gap: 0.75rem 1rem;
      justify-content: center;
      margin-bottom: 2rem;
      padding: 0 0.5rem;
    }
    .list-titles button {
      background-color: rgba(59, 130, 246, 0.25);
      color: #bfdbfe;
      font-weight: 600;
      padding: 0.5rem 1rem;
      border-radius: 0.75rem;
      transition: background-color 0.3s ease, color 0.3s ease, box-shadow 0.3s ease;
      cursor: pointer;
      user-select: none;
      white-space: normal;
      text-align: center;
      box-shadow: 0 0 8px rgba(59, 130, 246, 0.2);
      line-height: 1.3;
      font-size: 1rem;
    }
    .list-titles button:hover,
    .list-titles button:focus {
      background-color: #3b82f6;
      color: white;
      outline: none;
      box-shadow: 0 0 15px rgba(59, 130, 246, 0.7);
    }
    .list-titles button.active {
      background-color: #2563eb;
      color: white;
      cursor: default;
      box-shadow: 0 0 20px rgba(37, 99, 235, 0.9);
    }
    .content-section {
      background: rgba(20, 35, 70, 0.9);
      border-radius: 1rem;
      padding: 2rem 2.5rem;
      box-shadow: 0 0 30px rgba(37, 99, 235, 0.6);
      color: #dbeafe;
      user-select: text;
      line-height: 1.6;
      font-size: 1.05rem;
      font-weight: 400;
      max-width: 900px;
      margin-left: auto;
      margin-right: auto;
      transition: background-color 0.3s ease;
    }
    .content-section:hover {
      background: rgba(37, 99, 235, 0.15);
      box-shadow: 0 0 40px rgba(37, 99, 235, 0.9);
    }
    .content-section h3 {
      color: #93c5fd;
      font-weight: 700;
      margin-bottom: 1rem;
      font-size: 1.75rem;
      line-height: 1.2;
    }
    .content-section p {
      margin-bottom: 1rem;
      color: #cbd5e1;
    }
    .content-section pre {
      background: #1e40af;
      padding: 1rem 1.25rem;
      border-radius: 0.75rem;
      overflow-x: auto;
      font-family: "Fira Mono", monospace, monospace;
      font-size: 0.95rem;
      margin: 1rem 0 1.5rem 0;
      white-space: pre-wrap;
      word-break: break-word;
      color: #dbeafe;
      box-shadow: inset 0 0 10px rgba(59, 130, 246, 0.7);
      user-select: text;
    }
    .content-section img {
      max-width: 100%;
      border-radius: 1rem;
      margin-top: 1.5rem;
      box-shadow: 0 0 20px rgba(59, 130, 246, 0.8);
      user-select: none;
      cursor: pointer;
      transition: transform 0.3s ease;
    }
    .content-section img:hover,
    .content-section img:focus {
      transform: scale(1.03);
      outline: none;
      box-shadow: 0 0 30px rgba(37, 99, 235, 1);
    }
    @media (max-width: 767px) {
      #sidebar {
        width: 80vw;
        max-width: none;
        padding-top: 3rem;
      }
      main.sidebar-open {
        margin-left: 0;
      }
      .list-titles {
        grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
        gap: 0.5rem 0.75rem;
      }
      .list-titles button {
        font-size: 0.9rem;
        padding: 0.4rem 0.8rem;
      }
      .content-section {
        padding: 1.5rem 1.5rem;
        font-size: 1rem;
      }
      .content-section h3 {
        font-size: 1.5rem;
      }
    }

    /* Modal styles */
    #image-modal {
      position: fixed;
      inset: 0;
      background: rgba(14, 30, 64, 0.95);
      backdrop-filter: blur(14px);
      display: flex;
      justify-content: center;
      align-items: center;
      z-index: 1000;
      opacity: 0;
      pointer-events: none;
      transition: opacity 0.3s ease;
    }
    #image-modal.active {
      opacity: 1;
      pointer-events: auto;
    }
    #image-modal .modal-content {
      position: relative;
      max-width: 95vw;
      max-height: 95vh;
      border-radius: 1rem;
      box-shadow: 0 0 30px rgba(59, 130, 246, 0.8);
      overflow: hidden;
      background: #1e40af;
      display: flex;
      justify-content: center;
      align-items: center;
      padding: 0.5rem;
    }
    #image-modal img {
      max-width: 100%;
      max-height: 100%;
      object-fit: contain;
      display: block;
      border-radius: 1rem;
      user-select: none;
    }
    #image-modal button.close-btn {
      position: absolute;
      top: 0.5rem;
      right: 0.5rem;
      background: rgba(59, 130, 246, 0.8);
      border: none;
      color: white;
      font-size: 2rem;
      padding: 0.25rem 0.6rem;
      border-radius: 9999px;
      cursor: pointer;
      transition: background-color 0.3s ease;
      user-select: none;
      line-height: 1;
      z-index: 10;
    }
    #image-modal button.close-btn:hover,
    #image-modal button.close-btn:focus {
      background: rgba(59, 130, 246, 1);
      outline: none;
    }
