/* Startup Readiness Assessment – Scoped Styles */
.quiz-scope {
  background: linear-gradient(135deg, #13343b 0%, #1a3a42 100%);
  padding: 4rem 0;
}

:root {
            --color-white: rgba(255, 255, 255, 1);
            --color-black: rgba(0, 0, 0, 1);
            --color-cream-50: rgba(252, 252, 249, 1);
            --color-cream-100: rgba(255, 255, 253, 1);
            --color-gray-200: rgba(245, 245, 245, 1);
            --color-gray-300: rgba(167, 169, 169, 1);
            --color-slate-500: rgba(98, 108, 113, 1);
            --color-slate-900: rgba(19, 52, 59, 1);
            --color-teal-300: rgba(50, 184, 198, 1);
            --color-teal-400: rgba(45, 166, 178, 1);
            --color-teal-500: rgba(33, 128, 141, 1);
            --color-teal-600: rgba(29, 116, 128, 1);
            --color-teal-700: rgba(26, 104, 115, 1);
            --color-orange-400: rgba(230, 129, 97, 1);
            --color-orange-500: rgba(168, 75, 47, 1);
            --color-red-400: rgba(255, 84, 89, 1);
            --color-green-500: rgba(34, 197, 94, 1);
            --color-purple-500: rgba(168, 85, 247, 1);
            --color-pink-500: rgba(236, 72, 153, 1);

            --font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
            --font-family-mono: "Berkeley Mono", ui-monospace, monospace;
            
            --space-4: 4px;
            --space-8: 8px;
            --space-12: 12px;
            --space-16: 16px;
            --space-20: 20px;
            --space-24: 24px;
            --space-32: 32px;

            --radius-sm: 6px;
            --radius-base: 8px;
            --radius-lg: 12px;
            --radius-full: 9999px;

            --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.04);
            --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.04);
            --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.08);

            --duration-fast: 150ms;
            --duration-normal: 250ms;
            --ease-standard: cubic-bezier(0.16, 1, 0.3, 1);
        }

        * {
            box-sizing: border-box;
        }

        

        body {
            padding: var(--space-16);
        }

        .container {
            max-width: 900px;
            margin: 0 auto;
        }

        .header {
            text-align: center;
            margin-bottom: var(--space-32);
            animation: slideDown 0.8s var(--ease-standard);
        }

        .logo {
            font-size: 48px;
            margin-bottom: var(--space-12);
            display: inline-block;
            animation: bounce 2s infinite;
        }

        @keyframes bounce {
            0%, 100% { transform: translateY(0); }
            50% { transform: translateY(-8px); }
        }

        .header h1 {
            margin: 0;
            font-size: 32px;
            background: linear-gradient(135deg, var(--color-teal-300), var(--color-orange-400));
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            font-weight: 700;
        }

        .header p {
            color: var(--color-gray-300);
            margin: var(--space-12) 0 0 0;
            font-size: 16px;
        }

        .quiz-container {
            background: var(--color-cream-50);
            border-radius: var(--radius-lg);
            padding: var(--space-32);
            box-shadow: var(--shadow-lg);
            animation: fadeIn 0.8s var(--ease-standard);
        }

        @keyframes fadeIn {
            from { opacity: 0; }
            to { opacity: 1; }
        }

        @keyframes slideDown {
            from { opacity: 0; transform: translateY(-20px); }
            to { opacity: 1; transform: translateY(0); }
        }

        .progress-bar {
            width: 100%;
            height: 8px;
            background: var(--color-gray-200);
            border-radius: var(--radius-full);
            margin-bottom: var(--space-24);
            overflow: hidden;
        }

        .progress-fill {
            height: 100%;
            background: linear-gradient(90deg, var(--color-teal-400), var(--color-orange-400));
            border-radius: var(--radius-full);
            transition: width 0.6s var(--ease-standard);
        }

        .progress-text {
            text-align: right;
            font-size: 12px;
            color: var(--color-slate-500);
            margin-top: var(--space-8);
            font-weight: 600;
        }

        .question-section {
            display: none;
            animation: slideDown 0.5s var(--ease-standard);
        }

        .question-section.active {
            display: block;
        }

        .question-title {
            font-size: 22px;
            font-weight: 700;
            color: var(--color-slate-900);
            margin: 0 0 var(--space-8) 0;
        }

        .question-category {
            display: inline-block;
            background: var(--color-bg-1);
            color: var(--color-teal-500);
            padding: var(--space-4) var(--space-12);
            border-radius: var(--radius-full);
            font-size: 12px;
            font-weight: 600;
            margin-bottom: var(--space-16);
            text-transform: uppercase;
            letter-spacing: 0.5px;
        }

        .question-description {
            color: var(--color-slate-500);
            font-size: 14px;
            margin-bottom: var(--space-20);
            line-height: 1.6;
        }

        .options-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: var(--space-16);
            margin-bottom: var(--space-24);
        }

        .option-btn {
            padding: var(--space-16);
            border: 2px solid var(--color-gray-200);
            border-radius: var(--radius-base);
            background: var(--color-white);
            cursor: pointer;
            transition: all var(--duration-normal) var(--ease-standard);
            font-size: 15px;
            font-weight: 500;
            text-align: left;
            position: relative;
            overflow: hidden;
        }

        .option-btn::before {
            content: '';
            position: absolute;
            top: 0;
            left: -100%;
            width: 100%;
            height: 100%;
            background: var(--color-teal-300);
            opacity: 0.1;
            transition: left var(--duration-normal) var(--ease-standard);
            z-index: 0;
        }

        .option-btn:hover {
            border-color: var(--color-teal-400);
            transform: translateY(-2px);
            box-shadow: var(--shadow-md);
        }

        .option-btn:hover::before {
            left: 0;
        }

        .option-btn.selected {
            border-color: var(--color-teal-500);
            background: var(--color-bg-1);
            color: var(--color-teal-600);
            font-weight: 600;
        }

        .option-btn.selected::after {
            content: '✓';
            position: absolute;
            right: 16px;
            top: 50%;
            transform: translateY(-50%);
            font-size: 20px;
            color: var(--color-teal-500);
        }

        .option-text {
            position: relative;
            z-index: 1;
        }

        .controls {
            display: flex;
            gap: var(--space-12);
            margin-top: var(--space-32);
            justify-content: space-between;
        }

        .btn {
            padding: var(--space-12) var(--space-24);
            border: none;
            border-radius: var(--radius-base);
            font-size: 15px;
            font-weight: 600;
            cursor: pointer;
            transition: all var(--duration-normal) var(--ease-standard);
        }

        .btn-primary {
            background: linear-gradient(135deg, var(--color-teal-400), var(--color-teal-500));
            color: var(--color-white);
            flex-grow: 1;
        }

        .btn-primary:hover {
            background: linear-gradient(135deg, var(--color-teal-500), var(--color-teal-600));
            transform: translateY(-2px);
            box-shadow: var(--shadow-lg);
        }

        .btn-primary:disabled {
            opacity: 0.5;
            cursor: not-allowed;
            transform: none;
        }

        .btn-secondary {
            background: var(--color-gray-200);
            color: var(--color-slate-900);
        }

        .btn-secondary:hover {
            background: var(--color-gray-300);
        }

        .result-screen {
            display: none;
            text-align: center;
            animation: slideDown 0.8s var(--ease-standard);
        }

        .result-screen.active {
            display: block;
        }

        .score-circle {
            width: 180px;
            height: 180px;
            border-radius: 50%;
            background: linear-gradient(135deg, var(--color-teal-400), var(--color-orange-400));
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 auto var(--space-24);
            box-shadow: var(--shadow-lg);
            animation: scaleIn 0.8s var(--ease-standard);
        }

        @keyframes scaleIn {
            from { transform: scale(0.8); opacity: 0; }
            to { transform: scale(1); opacity: 1; }
        }

        .score-value {
            font-size: 72px;
            font-weight: 700;
            color: var(--color-white);
        }

        .score-label {
            color: var(--color-white);
            font-size: 14px;
            margin-top: var(--space-8);
        }

        .result-title {
            font-size: 28px;
            font-weight: 700;
            color: var(--color-slate-900);
            margin-bottom: var(--space-12);
        }

        .result-subtitle {
            font-size: 18px;
            color: var(--color-teal-500);
            margin-bottom: var(--space-20);
            font-weight: 600;
        }

        .result-description {
            color: var(--color-slate-500);
            line-height: 1.8;
            margin-bottom: var(--space-24);
        }

        .readiness-breakdown {
            background: var(--color-gray-200);
            border-radius: var(--radius-base);
            padding: var(--space-20);
            margin-bottom: var(--space-24);
            text-align: left;
        }

        .breakdown-item {
            margin-bottom: var(--space-16);
        }

        .breakdown-item:last-child {
            margin-bottom: 0;
        }

        .breakdown-label {
            font-weight: 600;
            color: var(--color-slate-900);
            margin-bottom: var(--space-8);
            display: flex;
            justify-content: space-between;
        }

        .breakdown-bar {
            height: 6px;
            background: var(--color-gray-300);
            border-radius: var(--radius-full);
            overflow: hidden;
        }

        .breakdown-fill {
            height: 100%;
            border-radius: var(--radius-full);
            transition: width 1s var(--ease-standard);
        }

        .recommendation-section {
            background: var(--color-bg-1);
            border-left: 4px solid var(--color-teal-500);
            padding: var(--space-16);
            border-radius: var(--radius-base);
            margin-bottom: var(--space-24);
            text-align: left;
        }

        .recommendation-title {
            font-weight: 700;
            color: var(--color-teal-600);
            margin-bottom: var(--space-12);
        }

        .recommendation-list {
            list-style: none;
            padding: 0;
            margin: 0;
        }

        .recommendation-list li {
            margin-bottom: var(--space-8);
            color: var(--color-slate-700);
            font-size: 14px;
        }

        .recommendation-list li:before {
            content: '→ ';
            color: var(--color-teal-500);
            font-weight: 600;
            margin-right: var(--space-8);
        }

        .btn-restart {
            background: linear-gradient(135deg, var(--color-teal-400), var(--color-teal-500));
            color: var(--color-white);
            padding: var(--space-16) var(--space-32);
            font-size: 16px;
        }

        @media (max-width: 768px) {
            .quiz-container {
                padding: var(--space-20);
            }

            .options-grid {
                grid-template-columns: 1fr;
            }

            .header h1 {
                font-size: 24px;
            }

            .question-title {
                font-size: 18px;
            }

            .score-circle {
                width: 140px;
                height: 140px;
            }

            .score-value {
                font-size: 56px;
            }
        }

        .color-bg-1 {
            background: rgba(33, 128, 141, 0.08);
        }

        .confetti {
            position: fixed;
            pointer-events: none;
            animation: confetti-fall 3s ease-in forwards;
        }

        @keyframes confetti-fall {
            to {
                transform: translateY(100vh) rotate(360deg);
                opacity: 0;
            }
        }

        .emoji-float {
            position: fixed;
            font-size: 24px;
            pointer-events: none;
            animation: float-up 2s ease-out forwards;
        }

        @keyframes float-up {
            to {
                transform: translateY(-100px);
                opacity: 0;
            }
        }