        :root {
            --pink: #FF3F7F;
            --skyblue: #79b7ca;
            --purple: #8C00FF;
        }

        body {
            background-color: #79b7ca;
            color: var(--purple);
            margin: 0;
            overflow-x: hidden;
            scroll-behavior: smooth;
        }

        h1, h2, h3, h4 { font-weight: 700; }
        p, span, input { font-weight: 400; }

        /* Scrollbar */
        ::-webkit-scrollbar { width: 12px; }
        ::-webkit-scrollbar-track { background: var(--skyblue); }
        ::-webkit-scrollbar-thumb { background: var(--pink); border-radius: 20px; border: 3px solid var(--skyblue); }

        /* Animations */
        @keyframes float {
            0% { transform: translateY(0px) rotate(0deg); }
            50% { transform: translateY(-20px) rotate(2deg); }
            100% { transform: translateY(0px) rotate(0deg); }
        }

        @keyframes bounce-soft {
            0%, 100% { transform: translateY(0); }
            50% { transform: translateY(-10px); }
        }

        @keyframes sparkle {
            0%, 100% { opacity: 0; transform: scale(0); }
            50% { opacity: 1; transform: scale(1.2); }
        }

        .floating { animation: float 6s ease-in-out infinite; }
        .bounce { animation: bounce-soft 3s ease-in-out infinite; }
        
        .sparkle-star {
            position: absolute;
            color: var(--pink);
            animation: sparkle 2s infinite;
        }

        /* Layout Elements */
        .glass-panel {
            background: rgba(255, 63, 127, 0.05);
            backdrop-filter: blur(10px);
            border: 4px solid var(--pink);
            border-radius: 40px;
        }

        .doll-card {
            background: #79b7ca;
            border: 6px solid var(--purple);
            border-radius: 30px;
            transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
            position: relative;
            overflow: hidden;
        }

        .doll-card:hover {
            transform: scale(1.05) rotate(-2deg);
            box-shadow: 15px 15px 0px var(--pink);
            z-index: 10;
        }

        .pill-btn {
            border-radius: 50px;
            transition: all 0.3s;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-size: 1.5rem;
            padding: 10px 30px;
        }

        .pill-btn:hover {
            transform: scale(1.1) rotate(3deg);
        }

        /* Nav jigging */
        .nav-link:hover {
            animation: bounce-soft 0.5s infinite;
        }

        /* Custom Shapes */
        .blob-bg {
            position: absolute;
            z-index: -1;
            filter: blur(40px);
            opacity: 0.4;
        }

        /* Sections */
        section { position: relative; overflow: hidden; }

        .auth-overlay {
            position: fixed;
            inset: 0;
            background: rgba(140, 0, 255, 0.8);
            z-index: 5000;
            display: none;
            align-items: center;
            justify-content: center;
            backdrop-filter: blur(10px);
        }

        .auth-card {
            background: #79b7ca;
            border: 8px solid var(--pink);
            width: 100%;
            max-width: 450px;
            padding: 40px;
            border-radius: 40px;
            box-shadow: 20px 20px 0px var(--purple);
        }

        .input-magical {
            background: transparent;
            border: 4px solid var(--purple);
            border-radius: 20px;
            padding: 12px 20px;
            width: 100%;
            font-size: 1.2rem;
            outline: none;
            color: var(--purple);
        }

        .input-magical:focus {
            border-color: var(--pink);
            background: white;
        }

        .cart-drawer {
            position: fixed;
            top: 0;
            right: -100%;
            width: 100%;
            max-width: 400px;
            height: 100vh;
            background: #79b7ca;
            border-left: 8px solid var(--purple);
            z-index: 4000;
            transition: right 0.5s ease;
            padding: 30px;
        }

        .cart-drawer.open { right: 0; }
    