  table {
    width: 100%;
    margin: 2rem 0 1rem;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.95rem;
    line-height: 1.45;
    border: 1px solid rgba(31, 58, 95, 0.15);
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(31, 58, 95, 0.10);
  }
  table thead th {
    background: linear-gradient(135deg, #1f3a5f 0%, #2f6f9f 100%);
    color: #fff;
    text-align: left;
    font-weight: 600;
    letter-spacing: 0.02em;
    padding: 1rem 1.1rem;
    white-space: nowrap;
  }
  table tbody td {
    padding: 0.85rem 1.1rem;
    border-top: 1px solid rgba(31, 58, 95, 0.10);
    vertical-align: top;
  }
  table tbody tr:nth-child(even) { background: rgba(47, 111, 159, 0.06); }
  table tbody tr:hover { background: rgba(47, 111, 159, 0.14); transition: background 0.2s ease; }
  table tbody td:first-child { font-weight: 700; color: #2f6f9f; white-space: nowrap; }
  table tbody td:last-child { font-variant-numeric: tabular-nums; }
  table tbody td strong { display: inline-block; padding: 0.1rem 0.55rem; border-radius: 999px; background: #e8f3ec; color: #1e6b3a; font-size: 0.8rem; font-weight: 600; }
  @media (max-width: 700px) {
    table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
    table thead th, table tbody td { padding: 0.7rem 0.8rem; }
  }