/* css index */
    :root {
      --color-primary: #3498db;
      --color-primary-dark: #2980b9;
      --color-success: #2ecc71;
      --color-danger: #e74c3c;
      --color-warning: #f39c12;
      --color-dark: #2c3e50;
      --color-light: #ecf0f1;
    }
    
    body.auth-body {
      background-color: #f8f9fa;
      font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
      height: 100vh;
      display: flex;
      align-items: center;
      background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
    }
    
    .auth-container {
      max-width: 450px;
      width: 100%;
      margin: 0 auto;
      animation: fadeIn 0.5s ease-in-out;
    }
    
    .auth-card {
      background-color: white;
      border-radius: 12px;
      box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
      overflow: hidden;
      transition: all 0.3s ease;
    }
    
    .auth-card:hover {
      box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
    }
    
    .auth-header {
      background: linear-gradient(to right, var(--color-primary), var(--color-primary-dark));
      color: white;
      padding: 25px;
      text-align: center;
    }
    
    .auth-header h2 {
      margin: 0;
      font-weight: 600;
    }
    
    .auth-body {
      padding: 30px;
    }
    
    .auth-icon {
      font-size: 2.5rem;
      margin-bottom: 15px;
      color: var(--color-primary);
    }
    
    .form-control {
      border-radius: 8px;
      padding: 12px 15px;
      border: 1px solid #ddd;
      transition: all 0.3s;
    }
    
    .form-control:focus {
      border-color: var(--color-primary);
      box-shadow: 0 0 0 0.25rem rgba(52, 152, 219, 0.25);
    }
    
    .btn-auth {
      background: linear-gradient(to right, var(--color-primary), var(--color-primary-dark));
      border: none;
      border-radius: 8px;
      padding: 12px;
      font-weight: 600;
      color: white;
      transition: all 0.3s;
      width: 100%;
    }
    
    .btn-auth:hover {
      background: var(--color-primary-dark);
      transform: translateY(-2px);
      box-shadow: 0 5px 15px rgba(52, 152, 219, 0.3);
    }
    
    .auth-footer {
      text-align: center;
      margin-top: 20px;
      color: #7f8c8d;
    }
    
    .auth-footer a {
      color: var(--color-primary);
      text-decoration: none;
      font-weight: 500;
    }
    
    .auth-footer a:hover {
      text-decoration: underline;
    }
    
    .input-group-text {
      background-color: white;
      border-right: none;
    }
    
    .input-group .form-control {
      border-left: none;
    }
    
    .input-group:focus-within .input-group-text {
      border-color: var(--color-primary);
      color: var(--color-primary);
    }
    
    .floating-label {
      position: relative;
      margin-bottom: 20px;
    }
    
    .floating-label label {
      position: absolute;
      top: 12px;
      left: 15px;
      color: #7f8c8d;
      transition: all 0.3s;
      pointer-events: none;
      background-color: white;
      padding: 0 5px;
    }
    
    .floating-label input:focus + label,
    .floating-label input:not(:placeholder-shown) + label {
      top: -10px;
      left: 10px;
      font-size: 0.8rem;
      color: var(--color-primary);
    }
    
    .auth-logo {
      width: 80px;
      height: 80px;
      margin: 0 auto 15px;
      display: block;
      background-color: white;
      border-radius: 50%;
      padding: 15px;
      box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
    }
    
    @keyframes fadeIn {
      from { opacity: 0; transform: translateY(20px); }
      to { opacity: 1; transform: translateY(0); }
    }
    
    /* Toggle between login and register */
    .auth-form {
      display: none;
    }
    
    .auth-form.active {
      display: block;
    }
    
    /* Responsive adjustments */
    @media (max-width: 576px) {
      .auth-container {
        padding: 0 15px;
      }
      
      .auth-header {
        padding: 20px;
      }
      
      .auth-body {
        padding: 20px;
      }

      
    }

    /*css daftar */

        body.daftarpage {
            padding: 20px;
            background-color: #f8f9fa;
        }
        .exam-card {
            margin-bottom: 15px;
            border-radius: 8px;
            box-shadow: 0 2px 4px rgba(0,0,0,0.1);
            transition: transform 0.2s;
        }
        .exam-card:hover {
            transform: translateY(-2px);
        }
        .header {
            margin-bottom: 30px;
            text-align: center;
        }
        .loading-spinner {
            display: none;
            text-align: center;
            margin: 20px 0;
        }
        .completed-badge {
            position: absolute;
            top: 10px;
            right: 10px;
        }
        .disabled-card {
            opacity: 0.7;
            background-color: #f8f9fa;
        }
        .filter-section {
            background: white;
            padding: 15px;
            border-radius: 8px;
            box-shadow: 0 2px 4px rgba(0,0,0,0.1);
            margin-bottom: 20px;
        }


        /* css hasil */
        body.hasil {
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            margin: 0;
            padding: 0;
            background-color: #f5f5f5;
            color: #333;
            display: flex;
            justify-content: center;
            align-items: center;
            min-height: 100vh;

             padding: 20px; /* supaya aman di mobile */
        }
        
        .result-container {
            background-color: white;
            border-radius: 10px;
            box-shadow: 0 5px 15px rgba(0,0,0,0.1);
            padding: 30px;
            width: 90%;
            max-width: 500px;
            text-align: center;
        }
        
        .result-header {
            color: #2196F3;
            margin-bottom: 25px;
        }
        
        .result-item {
            display: flex;
            justify-content: space-between;
            margin-bottom: 15px;
            padding-bottom: 15px;
            border-bottom: 1px solid #eee;
        }
        
        .result-label {
            font-weight: bold;
            color: #555;
        }
        
        .result-value {
            color: #333;
        }
        
        .final-score {
            font-size: 24px;
            font-weight: bold;
            margin: 25px 0;
            padding: 15px;
            border-radius: 8px;
            background-color: #f9f9f9;
        }
        
        .pass {
            color: #4CAF50;
        }
        
        .fail {
            color: #F44336;
        }
        
        .message {
            margin-top: 20px;
            padding: 15px;
            border-radius: 8px;
            background-color: #FFF9C4;
            color: #333;
        }
        
        .btn {
            display: inline-block;
            margin-top: 25px;
            padding: 12px 24px;
            background-color: #2196F3;
            color: white;
            text-decoration: none;
            border-radius: 6px;
            font-weight: bold;
            transition: background-color 0.3s;
        }
        
        .btn:hover {
            background-color: #0d8aee;
        }

.jawaban-list {
    text-align: left;
}

.jawaban-item {
    border-bottom: 1px solid #ddd;
    padding: 10px 0;
}

.jawaban-item p {
    margin: 5px 0;
}

.jawaban-item .benar {
    color: #4CAF50;
    font-weight: bold;
}

.jawaban-item .salah {
    color: #F44336;
    font-weight: bold;
}

