        /* Bottom Sheet Styles */
        .onboarding-overlay {
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: rgba(61, 18, 18, 0.85);
            backdrop-filter: blur(20px) contrast(130%) saturate(280%);
            -webkit-backdrop-filter: blur(20px) contrast(130%) saturate(280%);
            z-index: 9998;
            opacity: 0;
            pointer-events: none;
            transition: opacity 1.2s cubic-bezier(0.16, 1, 0.3, 1);
            will-change: opacity;
        }

        .onboarding-overlay.active {
            opacity: 1;
            pointer-events: all;
        }

        .onboarding-sheet {
            position: fixed;
            bottom: 0;
            left: 0;
            right: 0;
            background: rgba(61, 18, 18, 0.85);
            backdrop-filter: blur(20px) contrast(130%) saturate(280%);
            -webkit-backdrop-filter: blur(20px) contrast(130%) saturate(280%);
            border-radius: 40px 40px 0 0;
            padding: 2rem 1.5rem 3rem;
            transform: translateY(100%);
            transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1);
            z-index: 9999;
            max-height: 85vh;
            overflow: hidden;
            will-change: transform;
            box-shadow: 0 -20px 60px rgba(185, 58, 58, 0.3),
                inset 0 1px 1px rgba(255, 255, 255, 0.1);
        }

        .onboarding-sheet::before {
            content: '';
            position: absolute;
            inset: 0;
            border-radius: 40px 40px 0 0;
            padding: 1px;
            background: linear-gradient(135deg,
                    rgba(255, 255, 255, 0.15) 0%,
                    rgba(185, 58, 58, 0.2) 50%,
                    rgba(255, 255, 255, 0.1) 100%);
            -webkit-mask:
                linear-gradient(#fff 0 0) content-box,
                linear-gradient(#fff 0 0);
            -webkit-mask-composite: xor;
            mask-composite: exclude;
            pointer-events: none;
            z-index: -1;
        }

        .onboarding-sheet.active {
            transform: translateY(0);
        }

        .sheet-content {
            position: relative;
            height: 100%;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            min-height: 400px;
        }

        .sheet-stage {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            opacity: 0;
            transform: translateY(20px);
            transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1);
            padding: 0.5rem;
            pointer-events: none;
            border-radius: 30px;
            margin: 1rem;
        }

        .sheet-stage.active {
            opacity: 1;
            transform: translateY(0);
            pointer-events: all;
        }

        .stage-content {
            text-align: center;
            max-width: 400px;
            width: 100%;
            padding: 4rem;
            border-radius: 25px;
        }

        .sheet-title {
            font-family: 'Syne', sans-serif;
            font-size: 2.5rem;
            font-weight: 700;
            line-height: 1.2;
            margin-bottom: 1rem;
            color: #f8fafc;
            opacity: 0;
            transform: translateY(20px);
            animation: fadeInUp 1s cubic-bezier(0.16, 1, 0.3, 1) forwards;
            text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
        }

        .sage-title {
            color: #86efac;
            font-style: italic;
            font-weight: 500;
            text-shadow: 0 2px 8px rgba(134, 239, 172, 0.3);
        }

        .sheet-subtitle {
            font-family: 'Poppins', sans-serif;
            font-size: 1.1rem;
            font-weight: 300;
            color: #cbd5e1;
            opacity: 0;
            transform: translateY(10px);
            animation: fadeInUp 1s cubic-bezier(0.16, 1, 0.3, 1) 0.3s forwards;
            line-height: 1.6;
            text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
        }

        /* Breathing Glow Effect */
        .breathing-glow {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            border-radius: 40px;
            background: linear-gradient(135deg, rgba(134, 239, 172, 0.08) 0%, transparent 50%);
            animation: breathing 4s ease-in-out infinite;
            pointer-events: none;
            z-index: -1;
            backdrop-filter: blur(5px);
            -webkit-backdrop-filter: blur(5px);
        }

        /* Ember Glow Effect */
        .ember-glow {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 200px;
            height: 200px;
            background: radial-gradient(circle, rgba(185, 58, 58, 0.4) 0%, transparent 70%);
            opacity: 0;
            animation: emberPulse 2s ease-in-out infinite;
            pointer-events: none;
            z-index: -1;
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
        }

        /* Action Buttons */
        .sheet-actions {
            display: flex;
            flex-direction: column;
            gap: 1rem;
            margin-top: 3rem;
            opacity: 0;
            transform: translateY(20px);
            animation: fadeInUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.6s forwards;
            width: 100%;
            max-width: 300px;
        }

        .btn-primary {
            background: linear-gradient(135deg, rgba(185, 58, 58, 0.9) 0%, rgba(155, 47, 47, 0.9) 100%);
            color: white;
            border: none;
            padding: 1.2rem 2rem;
            border-radius: 50px;
            font-family: 'Syne', sans-serif;
            font-weight: 600;
            font-size: 1.1rem;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0.75rem;
            transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.1);
            position: relative;
            overflow: hidden;
            backdrop-filter: blur(10px) contrast(130%) saturate(280%);
            -webkit-backdrop-filter: blur(10px) contrast(130%) saturate(280%);
            border: 1px solid rgba(255, 255, 255, 0.15);
            box-shadow: 0 8px 32px rgba(185, 58, 58, 0.3),
                inset 0 1px 1px rgba(255, 255, 255, 0.2);
        }

        .btn-primary::before {
            content: '';
            position: absolute;
            inset: 0;
            border-radius: 50px;
            padding: 1px;
            background: linear-gradient(135deg,
                    rgba(255, 255, 255, 0.3) 0%,
                    rgba(185, 58, 58, 0.2) 50%,
                    rgba(255, 255, 255, 0.1) 100%);
            -webkit-mask:
                linear-gradient(#fff 0 0) content-box,
                linear-gradient(#fff 0 0);
            -webkit-mask-composite: xor;
            mask-composite: exclude;
            opacity: 0;
            transition: opacity 0.4s ease;
            pointer-events: none;
        }

        .btn-primary:hover {
            transform: translateY(-2px);
            background: linear-gradient(135deg, rgba(214, 69, 69, 0.95) 0%, rgba(185, 58, 58, 0.95) 100%);
            box-shadow: 0 12px 40px rgba(185, 58, 58, 0.4),
                inset 0 1px 1px rgba(255, 255, 255, 0.2);
        }

        .btn-primary:hover::before {
            opacity: 1;
        }

        .btn-primary:active {
            transform: scale(0.98);
        }

        .btn-primary i {
            transition: transform 0.3s ease;
        }

        .btn-primary:hover i {
            transform: translateX(4px);
        }

        .btn-secondary {
            background: rgba(255, 255, 255, 0.05);
            color: #cbd5e1;
            border: 1px solid rgba(185, 58, 58, 0.3);
            padding: 1rem 2rem;
            border-radius: 50px;
            font-family: 'Poppins', sans-serif;
            font-weight: 500;
            font-size: 1rem;
            cursor: pointer;
            transition: all 0.3s ease;
            backdrop-filter: blur(10px) contrast(130%) saturate(280%);
            -webkit-backdrop-filter: blur(10px) contrast(130%) saturate(280%);
            box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.1);
        }

        .btn-secondary:hover {
            color: #f8fafc;
            border-color: rgba(185, 58, 58, 0.6);
            background: rgba(185, 58, 58, 0.1);
            box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.1),
                0 4px 20px rgba(185, 58, 58, 0.2);
        }

        /* Progress Dots */
        .sheet-progress {
            position: absolute;
            bottom: 0.50rem;
            left: 0;
            right: 0;
            display: flex;
            justify-content: center;
        }

        .progress-dots {
            display: flex;
            gap: 0.75rem;
            padding: 0.75rem 1.5rem;
            background: rgba(255, 255, 255, 0.05);
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
            border-radius: 50px;
            border: 1px solid rgba(255, 255, 255, 0.1);
        }

        .dot {
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background: rgba(185, 58, 58, 0.3);
            transition: all 0.5s cubic-bezier(0.16, 1, 0.3, 1);
            backdrop-filter: blur(2px);
            -webkit-backdrop-filter: blur(2px);
        }

        .dot.active {
            background: #d64545;
            transform: scale(1.2);
            box-shadow: 0 0 10px rgba(214, 69, 69, 0.5);
        }

        /* Animations */
        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(20px);
            }

            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        @keyframes breathing {

            0%,
            100% {
                opacity: 0.05;
            }

            50% {
                opacity: 0.15;
            }
        }

        @keyframes emberPulse {

            0%,
            100% {
                opacity: 0.1;
                transform: translate(-50%, -50%) scale(1);
            }

            50% {
                opacity: 0.25;
                transform: translate(-50%, -50%) scale(1.1);
            }
        }

        /* Mobile Styles (Full width, no margins) */
        @media (max-width: 767px) {
            .onboarding-sheet {
                border-radius: 30px 30px 0 0;
                padding: 2rem 1rem 2.5rem;
                left: 0;
                right: 0;
                transform: translateY(100%);
            }

            .onboarding-sheet.active {
                transform: translateY(0);
            }

            .sheet-title {
                font-size: 2rem;
            }

            .sheet-subtitle {
                font-size: 1rem;
            }

            .sheet-actions {
                margin-top: 2rem;
            }

            .stage-content {
                padding: 1.5rem;
            }
        }

        /* Desktop Styles (Centered, not stretched) */
        @media (min-width: 768px) {
            .onboarding-sheet {
                left: 50%;
                transform: translate(-50%, 100%);
                width: 500px;
                max-width: 500px;
                border-radius: 30px;
                padding: 2.5rem 2rem 3rem;
            }

            .onboarding-sheet.active {
                transform: translate(-50%, 0);
            }
        }

        /* Large Desktop Styles */
        @media (min-width: 1024px) {
            .onboarding-sheet {
                width: 520px;
                max-width: 520px;
            }
        }

        /* Prevent all interactions with main content */
        .onboarding-overlay.active~* {
            pointer-events: none !important;
            user-select: none !important;
            -webkit-user-select: none !important;
            -moz-user-select: none !important;
            -ms-user-select: none !important;
        }

        /* Disable scroll when sheet is active */
        body.sheet-active {
            overflow: hidden !important;
            position: fixed;
            width: 100%;
            height: 100%;
        }