:root {
            --brand: #9B00FF;
            --brand-light: #C266FF;
            --brand-dark: #7700CC;
            --bg: #FAF9F6;
            --bg2: #F3EEFF;
            --bg3: #E5D0F8;
            --ink: #1A0A2E;
            --ink2: #4A2870;
            --ink3: #8A6AAA;
            --radius-lg: 20px;
            --radius: 12px;
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Manrope', sans-serif;
        }

        body {
            background-color: #F8F9FA;
            color: var(--ink);
            display: flex;
            flex-direction: column;
            align-items: center;
            min-height: 100vh;
            overflow-x: hidden;
            position: relative;
        }

        /* Arkaplandaki Vektörel Hava / Dağ gibi görünüm için yumuşak bir arka plan dalgası */
        .bg-wave {
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 40vh;
            background: linear-gradient(180deg, rgba(243,238,255,0) 0%, rgba(229,208,248,0.6) 100%);
            z-index: -1;
            clip-path: polygon(0 40%, 100% 0%, 100% 100%, 0% 100%);
        }

        /* Üst Header / Logo */
        header {
            width: 100%;
            padding: 24px 0;
            display: flex;
            justify-content: center;
            align-items: center;
            position: relative;
            z-index: 10;
        }

        .logo {
            font-family: 'Outfit', sans-serif;
            font-weight: 700;
            font-size: 1.5rem;
            color: var(--ink);
            text-decoration: none;
        }
        
        .logo em {
            font-style: normal;
            color: var(--brand);
            opacity: 0.8;
        }

        /* Geri Dön Butonu */
        .back-btn {
            position: absolute;
            left: 2rem;
            top: 24px;
            background: white;
            border: 1px solid #E5E7EB;
            width: 40px;
            height: 40px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            color: var(--ink2);
            transition: all 0.2s;
        }
        .back-btn:hover {
            border-color: var(--brand);
            color: var(--brand);
        }

        /* Form Container */
        .wizard-container {
            width: 100%;
            max-width: 600px;
            margin: 20px auto;
            position: relative;
            z-index: 10;
            padding: 0 20px;
        }

        /* İlerleme Çubuğu (Progress Bar) */
        .progress-wrapper {
            margin-bottom: 24px;
            background: #E5E7EB;
            height: 8px;
            border-radius: 10px;
            overflow: hidden;
        }

        .progress-bar {
            height: 100%;
            background: var(--brand);
            border-radius: 10px;
            width: 0%;
            transition: width 0.4s ease;
        }

        /* Soru Kartı */
        .question-card {
            background: white;
            border-radius: var(--radius-lg);
            padding: 40px 30px;
            box-shadow: 0 10px 40px rgba(0, 0, 0, 0.04);
            border: 1px solid #F3F4F6;
            margin-bottom: 2rem;
            display: none; /* JS ile açılacak */
            animation: slideIn 0.4s ease forwards;
        }

        .question-card.active {
            display: block;
        }

        @keyframes slideIn {
            from { opacity: 0; transform: translateY(15px); }
            to { opacity: 1; transform: translateY(0); }
        }

        .question-title {
            font-family: 'Outfit', sans-serif;
            font-size: 1.5rem;
            font-weight: 600;
            text-align: center;
            color: var(--ink);
            margin-bottom: 30px;
        }

        /* Seçenekler (Radio Buttons) */
        .options-list {
            display: flex;
            flex-direction: column;
            gap: 12px;
        }

        .option-label {
            display: flex;
            align-items: center;
            padding: 16px 20px;
            border: 2px solid #F3F4F6;
            border-radius: var(--radius);
            cursor: pointer;
            transition: all 0.2s;
            font-weight: 500;
            color: var(--ink);
            background: white;
        }

        .option-label:hover {
            border-color: var(--brand-light);
            background: var(--bg2);
        }

        .option-label input[type="radio"] {
            display: none;
        }

        .radio-circle {
            width: 20px;
            height: 20px;
            border: 2px solid #D1D5DB;
            border-radius: 50%;
            margin-right: 14px;
            position: relative;
            transition: all 0.2s;
        }

        .option-label input[type="radio"]:checked + .radio-circle {
            border-color: var(--brand);
        }

        .option-label input[type="radio"]:checked + .radio-circle::after {
            content: '';
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 10px;
            height: 10px;
            background: var(--brand);
            border-radius: 50%;
        }

        .option-label.selected {
            border-color: var(--brand);
            background: var(--bg2);
            color: var(--brand-dark);
            font-weight: 600;
        }

        .next-btn-container {
            display: flex;
            justify-content: center;
            margin-top: 2rem;
        }

        .btn-continue {
            background: var(--brand);
            color: white;
            border: none;
            padding: 14px 40px;
            border-radius: 30px;
            font-family: 'Outfit', sans-serif;
            font-size: 1rem;
            font-weight: 600;
            cursor: pointer;
            transition: all 0.2s;
            box-shadow: 0 4px 15px rgba(155, 0, 255, 0.2);
        }

        .btn-continue:hover {
            background: var(--brand-dark);
            transform: translateY(-2px);
        }

        @media (max-width: 600px) {
            .back-btn { left: 1rem; }
            .question-card { padding: 30px 20px; }
            .question-title { font-size: 1.25rem; }
        }
