        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
        }
        
        body {
            background: linear-gradient(135deg, #f5f7fa 0%, #e4edf5 100%);
            color: #333;
            line-height: 1.6;
            /* padding: 20px; */
        }

        .container-navbar {
            /* width: 100%; */
            margin: 0;
            padding: 0;
        }

        nav {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 20px 0;
            background-color: #FF9B00;
        }
        .navbar-logo {
            display: flex;
            align-items: center;
        }

        .nav-logo a {
            color: white;
            text-decoration: none;
            font-size: 28px;
            padding-left: 30px;
            font-family: 'Poppins', sans-serif;
            font-weight: bold;
        }

        a {
            text-decoration: none;
        }

        span {
            font-weight: 1000;
            /* font-size: 28px; */
            /* color: red; */
            font-style: italic;
            padding-top: 20px;
        }

        .media-social {
            display: flex;
            padding-right: 30px;
            padding-left: 5px;
            gap: 20px;
            font-size: 25px;
            transition: transform 0.3s ease, color 0.3s ease;
            box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
        }

        .media-social a {
            text-decoration: none;
            color: #000;
        }

        .container {
            max-width: 800px;
            margin: 0 auto;
            background-color: white;
            border-radius: 12px;
            box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
            overflow: hidden;
            margin-top: 20px;
        }
        
        header {
            background: #FF9B00;
            color: white;
            padding: 40px 40px 40px 40px;
            text-align: center;
            position: relative;
        }
        
        header h1 {
            font-size: 28px;
            font-weight: 600;
            margin-bottom: 10px;
        }
        
        .logo {
            position: absolute;
            top: 20px;
            right: 20px;
            font-size: 24px;
            font-weight: bold;
            color: #ffd166;
        }
        
        .form-container {
            padding: 40px;
        }
        
        .section {
            margin-bottom: 40px;
            padding-bottom: 30px;
            border-bottom: 1px solid #eaeaea;
        }
        
        .section-title {
            font-size: 22px;
            font-weight: 600;
            color: #2c5282;
            margin-bottom: 25px;
            padding-bottom: 10px;
            border-bottom: 2px solid #eaeaea;
        }
        
        .form-group {
            margin-bottom: 20px;
            padding-top: 20px;
            /* color: #2d3748; */
            /* display: flex; */
        }
        
        .form-group label {
            display: block;
            font-weight: 500;
            margin-bottom: 10px;
            color: #2d3748;
        }

        .form-checkbox {
            display: flex;
            align-items: center;
            margin-bottom: 15px;
        }

        .checkbox-item {
            display: flex;
            align-items: center;
            background: white;
            padding: 8px 12px;
            border-radius: 8px;
            transition: 0.2s;
        }

        .required {
            display: block;
            font-weight: 500;
            margin-bottom: 10px;
            color: #2d3748;
            padding-top: 20px;
        }
        .required::after {
            content: " *";
            color: #e53e3e;
        }
        
        input[type="text"],
        input[type="tel"],
        input[type="email"],
        input[type="number"] {
            width: 100%;
            padding: 14px;
            border: 1px solid #cbd5e0;
            border-radius: 8px;
            font-size: 16px;
            transition: all 0.3s;
        }
        
        input:focus {
            border-color: #4299e1;
            box-shadow: 0 0 0 3px rgba(66, 153, 225, 0.2);
            outline: none;
        }
                
        .example {
            font-size: 14px;
            color: #718096;
            margin-top: 5px;
        }
        
        .options-container {
            display: flex;
            flex-wrap: wrap;
            gap: 15px;
            margin-top: 10px;
        }
        
        .option-item {
            display: flex;
            align-items: center;
            background: #f7fafc;
            padding: 12px 15px;
            border-radius: 8px;
            border: 1px solid #e2e8f0;
            width: calc(50% - 8px);
            transition: all 0.2s;
        }

        .custom-item {
            display: flex;
            align-items: center;
            justify-content: space-between;
            background: #f7fafc;
            padding: 12px 15px;
            border-radius: 8px;
            border: 1px solid #e2e8f0;
            width: calc(50% - 8px);
            transition: all 0.2s;
        }
        
        .custom-item:hover {
            background: #ebf8ff;
            border-color: #bee3f8;
        }

        .custom-item input {
            justify-content: center;
            width: auto;
            border-radius: 50%;
        }

        .custom-item input[type="text"] {
            margin-right: 10px;
            padding-left: 20px;
            width: 275px;
            height: 20px;
            border-radius: 8px;
        }

        .option-item:hover {
            background: #ebf8ff;
            border-color: #bee3f8;
        }
        
        .option-item input {
            margin-right: 10px;
            width: 18px;
            height: 18px;
        }
        
        .checkbox-item {
            display: flex;
            align-items: center;
            margin-bottom: 12px;
        }
        
        .checkbox-item input {
            margin-right: 10px;
            width: 18px;
            height: 18px;
        }
        
        .mandatory {
            color: #e53e3e;
            font-size: 14px;
            font-weight: 500;
            margin: -15px 0 20px;
            display: block;
        }
        
        .sub-section {
            margin-top: 25px;
            padding-top: 25px;
            border-top: 1px dashed #eaeaea;
        }
        
        .developer-inputs {
            display: flex;
            flex-direction: column;
            gap: 15px;
        }
        
        .developer-input {
            display: flex;
            align-items: center;
        }
        
        .developer-input input {
            flex: 1;
            padding: 12px;
            border: 1px solid #cbd5e0;
            border-radius: 8px;
        }
        
        .checkbox-group {
            display: flex;
            align-items: center; 
            padding-top: 5px;   
            gap: 4px; /* jarak antar kotak */
            flex-wrap: wrap; /* agar kotak bisa pindah baris jika terlalu banyak */
        }
        .checkbox-item {
            display: flex;
            flex-direction: column; /* teks di atas, checkbox di bawah */
            align-items: center;
            padding: 0 0 0 0;
            border-radius: 5px;
            background: white;
            min-width: 10px;
            text-align: center;
        }
        .checkbox-item input[type="checkbox"] {
            margin-top: 6px;
            transform: scale(1.3); /* biar checkbox lebih besar */
            cursor: pointer;
        }

        .checkbox-item input[type="text"] {
            margin-top: 10px;
            padding: 10px 8px;
            border: 1px solid #ccc;
            border-radius: 6px;
            width: 50px;
        }

        .btn { 
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-top: 30px;
            padding-top: 25px;
            padding-left: 25px;
            padding-bottom: 25px;
            /* color: #fff; */
            border-top: 1px solid #eaeaea;
        }
        
        .notification-right {
            display: flex;
            justify-content: space-between;
            align-items: right;
            margin-top: 30px;
            padding: 25px 20px 50px 25px;
            border-top: 1px solid #eaeaea;
        }
        
        .btn-next {
            background: #FF9B00;
            color: white;
            border: none;
            padding: 14px 35px;
            border-radius: 8px;
            max-width: 200px;
            font-size: 16px;
            font-weight: 600;
            cursor: pointer;
            display: flex;
            align-items: center;
            gap: 10px;
            transition: all 0.3s;
        }
        
        .btn-next:hover {
            transform: translateY(-2px);
            box-shadow: 0 4px 12px rgba(26, 58, 95, 0.2);
        }
        
        .made-by {
            font-size: 14px;
            color: #718096;
        }
        
        .made-by strong {
            color: #2c5282;
        }
        
        .progress-container {
            margin: 25px 0 40px;
        }
        
        .progress-bar {
            height: 8px;
            background-color: #e2e8f0;
            border-radius: 4px;
            overflow: hidden;
        }
        
        .progress {
            height: 100%;
            background: linear-gradient(90deg, #4299e1 0%, #3182ce 100%);
            width: 30%;
            border-radius: 4px;
        }

        .progress-2 {
            height: 100%;
            background: linear-gradient(90deg, #4299e1 0%, #3182ce 100%);
            width: 60%;
            border-radius: 4px;
        }

        .progress-3 {
            height: 100%;
            background: linear-gradient(90deg, #4299e1 0%, #3182ce 100%);
            width: 100%;
            border-radius: 4px;
        }

        .progress-text {
            text-align: right;
            font-size: 14px;
            color: #4a5568;
            margin-top: 5px;
        }
        .text-rating {
            font-size: 16px;
            margin-bottom: 15px;
        }
        
        .question {
            font-size: 18px;
            margin-bottom: 25px;
            text-align: center;
            color: #34495e;
            font-weight: 500;
        }
        
        .rating-table {
            width: 100%;
            border-collapse: collapse;
            margin-bottom: 25px;
        }
        
        .rating-table th, .rating-table td {
            padding: 12px 5px;
            text-align: center;
            border: 1px solid #e0e0e0;
        }
        
        .rating-table th {
            background-color: #f8f9fa;
            font-weight: 600;
            color: #2c3e50;
        }
        
        .rating-option {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            height: 100%;
            cursor: pointer;
            transition: all 0.2s ease;
            padding: 10px 5px;
            border-radius: 5px;
        }
        
        .rating-option:hover {
            background-color: #f0f4f8;
        }
        
        .rating-option.selected {
            background-color: #e3f2fd;
            font-weight: 600;
        }
        
        .rating-label {
            font-size: 14px;
            margin-top: 8px;
            color: #546e7a;
            text-align: center;
            min-height: 40px;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        .rating-number {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 36px;
            height: 36px;
            border-radius: 50%;
            background-color: #e8eaf6;
            color: #303f9f;
            font-weight: 600;
            margin-bottom: 8px;
            transition: all 0.2s ease;
        }
        
        .rating-option.selected .rating-number {
            background-color: #303f9f;
            color: white;
        }
        .button-group {
            display: flex;
            justify-content: space-between;
             /* tombol ke tengah */
            gap: 15px;               /* jarak antar tombol */
            margin-top: 20px;
            padding-top: 10px;
        }
        .btn {
            background: linear-gradient(90deg, #2c5282 0%, #1a3a5f 100%);
            color: white;
            border: none;
            padding: 14px 35px;
            border-radius: 8px;
            font-size: 16px;
            font-weight: 600;
            cursor: pointer;
            align-items: center;
            gap: 10px;
            transition: all 0.3s;
            display: flex;
            margin-top: 30px;
            /* padding-top: 25px;
            padding-left: 25px;
            padding-bottom: 25px; */
            border-top: 1px solid #eaeaea;
        }

        .btn-next:hover {
            transform: translateY(-2px);
            box-shadow: 0 4px 12px rgba(26, 58, 95, 0.2);
        }

        @media (max-width: 768px) {
            .container {
                padding: 1.5rem;
                width: 95%;
            }
            
            header {
                padding: 20px 20px;
            }
            
            .form-container {
                padding: 25px;
            }
            
            .option-item {
                width: 100%;
            }
            .container-navbar {
                padding: 0 0 10px 10px;
            }
            .notification {
                display: none;
            }
            .btn {
                align-items: center;
                padding-left: 35%;
            }
            .btn-left {
                display: flex;
                justify-content: center;
                align-items: center;
                width: 100%;
            }
            table {
                font-size: 12px;
            }
            th, td {
                padding: 6px;
            }
            textarea {
                width: 120px;
                font-size: 12px;
            }
        }

        .question {
            font-weight: bold;
            margin-bottom: 15px;
            text-align: left;
        }
        
        .table-container {
            width: 100%;
            overflow-x: auto;
            border: 1px solid #ddd;
            border-radius: 6px;
            padding-bottom: 12px;
        }
        table {
            width: 100%;
            border-collapse: collapse;
            min-width: 700px; /* supaya scroll horizontal muncul kalau layar kecil */
        }
        th, td {
            border: 1px solid #ddd;
            padding: 10px;
            text-align: center;
            font-size: 14px;
        }
        th {
            background: #f8f8f8;
        }

        @media (max-width: 480px) {
            .container {
                padding: 1.5rem;
                width: 95%;
            }
            
            header {
                padding: 20px 20px;
            }
            
            .form-container {
                padding: 25px;
            }
            .checkbox-item {
                align-items: center;
                display: flex;
                width: 100%;
            }
            .option-item {
                width: 100%;
            }
            .container-navbar {
                padding: 0 0 10px 10px;
            }
            .button-group {
                flex-direction: column;  /* tombol turun ke bawah */
                align-items: center;     /* tetap rata tengah */
            }
            .btn {
                width: 80%;             /* tombol lebar biar enak di-tap */
                text-align: center;
            }
            .btn-next {
                padding-right: 50px;
            }
            .notification-right {
                /* display: none; */
                padding-right: 100%;
            }
            .rating-item {
                width: 40px;
                height: 40px;
            }
            .scale-text {
                font-size: 12px;
                max-width: 280px;
            }
            .media-social {
                display: none;
            }
            .media-social a {
                display: flex;
                width: 40px;
                height: 40px;
                margin: 0 5px;
                border-radius: 50%;
                background: #f0f0f0;
                transition: background 0.3s;
            }

            .media-social a:hover {
                background: #e0e0e0;
            }
        }
    
    .text-rating {
      font-size: 16px;
      margin-bottom: 15px;
    }

    /* wrapper rating */
    .rating-container {
      display: flex;
      justify-content: center;
      gap: 10px;
      flex-wrap: wrap;
      margin: 15px 0;
    }

    .rating-item {
      position: relative;
      width: 50px;
      height: 50px;
    }

    .rating-item input[type="radio"] {
      display: none;
    }

    .rating-item label {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      height: 100%;
      border: 1px solid #ccc;
      border-radius: 4px;
      font-weight: bold;
      cursor: pointer;
      transition: 0.3s;
    }

    .rating-item input[type="radio"]:checked + label {
      background-color: #b3e5fc;
      border-color: #0288d1;
      color: #000;
    }

    .scale-text {
      display: flex;
      justify-content: space-between;
      margin: 8px auto 0 auto;
      max-width: 350px;
      font-size: 14px;
    }

    span {
        color: #000;
        font-size: 15px;
        cursor: pointer;
    }

    h3 {
      margin-bottom: 15px;
      font-size: 16px;
    }

    .table-responsive {
      width: 100%;
      overflow-x: auto;   /* scroll ke kanan/kiri */
      -webkit-overflow-scrolling: touch; /* biar smooth di iPhone */
    }

    table {
      width: 100%;
      min-width: 600px; /* biar di hp scroll muncul */
      border-collapse: collapse;
      margin-bottom: 20px;
    }

    thead th {
      text-align: center;
      font-size: 14px;
      padding: 5px;
      background: #f8f8f8;
    }

    tbody td {
      text-align: center;
      padding: 8px 5px;
      border-bottom: 1px solid #eee;
    }

    tbody td:first-child {
      text-align: left;
      font-size: 14px;
      white-space: nowrap;
      font-weight: bold;
    }

    input[type="radio"] {
      transform: scale(1.1);
      cursor: pointer;
    }

    .footer {
        background-color: linear-gradient(135deg, #f5f7fa 0%, #e4edf5 100%);
        text-align: center;
        padding: 5% 0;
    }
    .footer a {
        text-decoration: none;
        /* color: #FF9B00; */
    }
    .footer__title {
        font-size: 1.8rem;
        margin-bottom: 1rem;
        font-family: poppins, sans-serif;
        color: #FF9B00;
    }
    .footer__social {
        margin-bottom: 1rem;
        /* background-color: #000; */
    }
    .footer__icon {
        color: #333;
        margin: 0 1rem;
        font-size: 2rem;
    }
    .footer__copy {
        font-size: 1rem;
        color: #333;
    }