    body {
      padding: 2rem;
      background-color: #f8f9fa;
    }
    .info-card {
      background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
      color: white;
      border-radius: 15px;
      padding: 1.5rem;
      margin-bottom: 2rem;
    }
    .summary-cards {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
      gap: 1rem;
      margin-bottom: 2rem;
    }
    .summary-card {
      background: white;
      border-radius: 10px;
      padding: 1.5rem;
      box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
      border-left: 4px solid #667eea;
    }
    .summary-card h5 {
      color: #667eea;
      margin-bottom: 0.5rem;
    }
    .summary-card .value {
      font-size: 1.5rem;
      font-weight: bold;
      color: #2c3e50;
    }
    h2 {
      margin-top: 2rem;
      color: #2c3e50;
    }
    table.dataTable tbody td {
      vertical-align: middle;
    }
    .upload-area {
      border: 2px dashed #667eea;
      border-radius: 10px;
      padding: 2rem;
      text-align: center;
      background: white;
      margin-bottom: 2rem;
    }
    .btn-upload {
      background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
      border: none;
      padding: 0.75rem 2rem;
      border-radius: 25px;
      color: white;
      font-weight: bold;
    }
    .btn-upload:hover {
      transform: translateY(-2px);
      box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    }
    .loading {
      display: none;
      text-align: center;
      padding: 2rem;
    }
    .status-badge {
      padding: 0.25rem 0.75rem;
      border-radius: 15px;
      font-size: 0.85rem;
      font-weight: bold;
    }
    .status-kena {
      background-color: #ffeaa7;
      color: #d63031;
    }
    .status-tidak-kena {
      background-color: #d1f2eb;
      color: #00b894;
    }
    .formula-note {
      background-color: rgba(255, 255, 255, 0.15);
      padding: 1rem;
      border-radius: 8px;
      margin-top: 1rem;
      border-left: 4px solid rgba(255, 255, 255, 0.3);
    }
    .method-card {
      background-color: rgba(255, 255, 255, 0.1);
      border-radius: 10px;
      padding: 1rem;
      margin-bottom: 1rem;
    }
    .method-card h5 {
      color: #ffd700;
      margin-bottom: 0.75rem;
    }
    .download-controls {
      background: white;
      border-radius: 10px;
      padding: 1.5rem;
      box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
      margin-bottom: 2rem;
    }
    .download-controls h5 {
      color: #667eea;
      margin-bottom: 1rem;
    }
    .filter-row {
      display: flex;
      align-items: center;
      gap: 1rem;
      margin-bottom: 1rem;
    }
    .filter-row label {
      font-weight: bold;
      color: #495057;
      min-width: 100px;
    }
    .btn-download {
      background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
      border: none;
      color: white;
      padding: 0.5rem 1.5rem;
      border-radius: 20px;
      font-weight: bold;
      transition: all 0.3s;
    }
    .btn-template {
      background: linear-gradient(135deg, #e17055 0%, #fdcb6e 100%);
      border: none;
      color: white;
      padding: 0.5rem 1.5rem;
      border-radius: 20px;
      font-weight: bold;
      transition: all 0.3s;
    }
    .btn-template:hover {
      transform: translateY(-1px);
      box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    }
    .btn-download:hover {
      transform: translateY(-1px);
      box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    }
    .btn-download-detail {
      background: linear-gradient(135deg, #6c757d 0%, #495057 100%);
      border: none;
      color: white;
      padding: 0.5rem 1.5rem;
      border-radius: 20px;
      font-weight: bold;
      transition: all 0.3s;
    }
    .btn-download-detail:hover {
      transform: translateY(-1px);
      box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    }
    .download-section {
      display: flex;
      gap: 2rem;
      align-items: flex-start;
    }
    .download-item {
      flex: 1;
    }
    .download-item h6 {
      color: #495057;
      margin-bottom: 0.5rem;
    }
    .download-item p {
      font-size: 0.9rem;
      color: #6c757d;
      margin-bottom: 1rem;
    }
    .table-filter-section {
      background: white;
      border-radius: 10px;
      padding: 1.5rem;
      box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
      margin-bottom: 2rem;
    }
    .table-filter-section h5 {
      color: #667eea;
      margin-bottom: 1rem;
    }
    .btn-filter {
      background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
      border: none;
      color: white;
      padding: 0.5rem 1.5rem;
      border-radius: 20px;
      font-weight: bold;
      transition: all 0.3s;
    }
    .btn-filter:hover {
      transform: translateY(-1px);
      box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    }
    .btn-clear {
      background: #6c757d;
      border: none;
      color: white;
      padding: 0.5rem 1.5rem;
      border-radius: 20px;
      font-weight: bold;
      transition: all 0.3s;
    }
    .btn-clear:hover {
      background: #5a6268;
      transform: translateY(-1px);
      box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    }
    .filter-info {
      background: #e3f2fd;
      border: 1px solid #2196f3;
      border-radius: 5px;
      padding: 0.75rem;
      margin-top: 1rem;
      color: #1976d2;
    }
    .method-badge {
      padding: 0.25rem 0.75rem;
      border-radius: 15px;
      font-size: 0.8rem;
      font-weight: bold;
    }
    .method-ptkp {
      background-color: #d1ecf1;
      color: #0c5460;
    }
    .method-flat {
      background-color: #f8d7da;
      color: #721c24;
    }
    @media (max-width: 768px) {
      .download-section {
        flex-direction: column;
        gap: 1rem;
      }
      .filter-row {
        flex-direction: column;
        align-items: flex-start;
      }
      .method-card {
        margin-bottom: 1rem;
      }
    }
