 * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    body {
      font-family: Arial, sans-serif;
      line-height: 1.6;
      background: #f4f5fb;
      color: #222;
    }

    a {
      text-decoration: none;
      color: inherit;
    }

    

    /* ====== LAYOUT ====== */
    main {
      max-width: 1100px;
      margin: 1.5rem auto;
      padding: 0 1rem 2rem;
    }

    section {
      margin-bottom: 2.5rem;
      background: #fff;
      padding: 1.5rem;
      border-radius: 8px;
      box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
    }

    h1, h2 {
      margin-bottom: 0.8rem;
      color: #0f4c81;
    }

    p {
      margin-bottom: 0.6rem;
    }

    .btn-primary {
      display: inline-block;
      margin-top: 0.8rem;
      background: #0f4c81;
      color: #fff;
      padding: 0.6rem 1rem;
      border-radius: 4px;
      cursor: pointer;
      border: none;
      font-size: 0.95rem;
    }

    .btn-primary:hover {
      background: #0c3960;
    }

    /* ====== QUESTION BANK ====== */
    .filters {
      display: flex;
      flex-wrap: wrap;
      gap: 0.8rem;
      margin-bottom: 1rem;
    }

    select {
      padding: 0.4rem 0.6rem;
      border-radius: 4px;
      border: 1px solid #ccc;
      font-size: 0.9rem;
    }

    .question-card {
      border: 1px solid #e4e4e4;
      border-radius: 6px;
      padding: 0.8rem 1rem;
      margin-bottom: 0.8rem;
      background: #fafbff;
    }

    .question-card h3 {
      font-size: 1rem;
      margin-bottom: 0.3rem;
      color: #333;
    }

    .tag-line {
      font-size: 0.8rem;
      color: #666;
      margin-bottom: 0.4rem;
    }

    .tips {
      font-size: 0.9rem;
      color: #444;
    }

    .tips ul {
      margin-left: 1rem;
      margin-top: 0.3rem;
    }

    /* ====== PRACTICE MODE ====== */
    #practice-box {
      border: 1px solid #e4e4e4;
      border-radius: 6px;
      padding: 1rem;
      background: #fafbff;
    }

    #practice-question {
      font-weight: bold;
      margin-bottom: 0.6rem;
    }

    #timer {
      font-size: 0.9rem;
      color: #b33;
      margin-bottom: 0.6rem;
    }

    #answer-structure {
      font-size: 0.9rem;
      margin-top: 0.5rem;
      display: none;
    }

    /* ====== ABOUT & CONTACT ====== */
    .contact-list {
      list-style: none;
      margin-top: 0.5rem;
    }

    .contact-list li {
      margin-bottom: 0.3rem;
    }

    /* ====== RESPONSIVE ====== */
    @media (max-width: 700px) {
      .nav {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.6rem;
      }
    }