:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}body{margin:0;padding:0;font-family:Poppins,sans-serif;background:#f6e1e1;color:#333}.app-container{width:100vw;min-height:100vh;overflow-x:hidden}.navbar{width:100%;max-width:100%;background:#d7a5a5;padding:18px 80px;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;box-shadow:0 2px 10px #00000014}.nav-left{display:flex;align-items:center;gap:12px}.logo-img{width:42px;height:42px;border-radius:50%}.logo-text{font-family:Dancing Script,cursive;font-size:24px;color:#fff}.search-bar{width:420px;display:flex;align-items:center;gap:10px}.search-input{width:100%;padding:10px 18px;border-radius:25px;border:none;outline:none;background:#ead5d5;color:#403a3a}.navbar-right{display:flex;align-items:center;gap:20px}.navbar-right button{background:#111;color:#fff;border:none;padding:8px 18px;border-radius:8px;cursor:pointer}.navbar-right svg{cursor:pointer;transition:.2s}.navbar-right svg:hover{transform:scale(1.15)}.welcome-message{text-align:center;font-family:Dancing Script,cursive;font-size:90px;color:#5a3434;margin-top:70px;margin-bottom:10px}.hero{width:100%;max-width:1400px;margin:60px auto;padding:0 80px;display:flex;align-items:center;justify-content:space-between;gap:120px;box-sizing:border-box}.hero-text{flex:1;max-width:500px;display:flex;flex-direction:column;justify-content:center}.hero-text h1{font-size:48px;color:#ff4d86;margin-bottom:15px}.hero-text p{color:#555;font-size:16px;margin-bottom:30px}.hero-image{flex:1;display:flex;justify-content:center}.hero-image img{width:100%;max-width:520px;border-radius:20px;box-shadow:0 20px 40px #00000026,0 6px 12px #00000014}.hero-image img:hover{transform:scale(1.03);transition:.3s}.cta-button{display:block;margin-bottom:16px;padding:14px 22px;width:240px;background:#ff4d6d;color:#fff;border:none;border-radius:14px;font-size:20px;font-family:Dancing Script,cursive;cursor:pointer;transition:all .25s ease}.cta-button:hover{background:#e63b5b;transform:translateY(-2px)}.reviews{padding:80px 10%;background:#f6f3f3;text-align:center}.reviews h2{font-size:32px;margin-bottom:40px;font-family:Poppins,sans-serif;color:#333}.reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:30px;justify-items:center}.review-card{background:#d6b3b3;padding:30px;border-radius:16px;width:260px;text-align:center;box-shadow:0 6px 20px #00000014;transition:transform .2s ease}.review-card:hover{transform:translateY(-5px)}.review-card img{width:100%;border-radius:10px;margin-bottom:12px}.review-card h3{font-family:Dancing Script,cursive;font-size:24px;color:#4a2d2d}.review-card p{font-family:Poppins,sans-serif;font-size:14px;margin-top:8px}.review-form{margin:60px auto;padding:40px;width:400px;background:#fff;border-radius:16px;box-shadow:0 6px 20px #00000014;display:flex;flex-direction:column;gap:12px}.review-form h3{text-align:center;font-family:Poppins,sans-serif}.review-form input,.review-form textarea,.review-form select{padding:10px;border-radius:8px;border:1px solid #ddd}.review-form button{background:#ff4d6d;border:none;padding:12px;color:#fff;border-radius:8px;cursor:pointer}.review-form button:hover{background:#ff2c55}.star-rating{font-size:26px;cursor:pointer;margin:10px 0}.star{opacity:.4;transition:.2s}.star.active{opacity:1}.contact{background:#d7a5a5;text-align:center;padding:60px 20px;color:#4a2b2b}.contact h2{margin-bottom:20px}.login-container{width:380px;margin:120px auto;background:#fff;padding:40px;border-radius:16px;box-shadow:0 8px 20px #00000014}.user-profile{display:flex;justify-content:center;margin-top:80px}.profile-content{width:420px;background:#fff;padding:30px;border-radius:16px;box-shadow:0 8px 20px #00000014}.cart-view{color:#333;width:600px;margin:80px auto;background:#fff;padding:40px;border-radius:16px;box-shadow:0 8px 20px #00000014}.cart-view h2{font-size:36px;font-family:Dancing Script,cursive;color:#5a3434;margin-bottom:30px;font-weight:600}.cart-items{display:flex;flex-direction:column;gap:30px}.cart-item{display:flex;align-items:center;gap:25px;border-bottom:1px solid #eee;padding-bottom:20px}.cart-image{width:230px;height:230px;object-fit:cover;border-radius:12px}.item-details{display:flex;flex-direction:column;gap:10px}.quantity-controls{display:flex;align-items:center;gap:12px;margin-top:8px}.quantity-controls span{font-family:Poppins,sans-serif;font-size:18px;font-weight:600;color:#5a3434}.quantity-controls button{background:#111;color:#fff;border:none;padding:6px 12px;border-radius:6px;font-size:14px;cursor:pointer;transition:.2s}.quantity-controls button:hover{transform:scale(1.08)}.item-details button:last-child{background:#444;color:#fff;border:none;padding:6px 14px;border-radius:6px;font-size:13px;margin-top:6px;cursor:pointer}.item-details h3{font-size:26px;font-family:Dancing Script,cursive;color:#5a3434;font-weight:600;margin-bottom:6px}.item-details p{font-size:16px;font-family:Poppins,sans-serif;color:#444;font-weight:500}.cart-total{font-family:Poppins,sans-serif;font-size:20px;font-weight:700;color:#5a3434;margin-top:20px}.back-button{margin:20px;padding:10px 16px;background:#222;color:#fff;border:none;border-radius:8px;cursor:pointer}.gallery{max-width:1200px;margin:60px auto;padding:0 40px}.gallery h2{text-align:center;font-size:42px;margin-bottom:40px;color:#5a3434;font-family:Dancing Script,cursive}.cake-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:40px}.cake-card{background:#fff;border-radius:16px;padding:18px;text-align:center;cursor:pointer;box-shadow:0 6px 18px #00000014;transition:all .25s ease}.cake-card:hover{transform:translateY(-6px);box-shadow:0 10px 25px #0000001f}.cake-image{width:100%;border-radius:12px;margin-bottom:12px}.cake-card p{font-size:18px;font-weight:500;color:#444}.cake-detail{max-width:1100px;margin:80px auto;padding:0 40px}.detail-content{display:flex;align-items:center;justify-content:space-between;gap:80px;background:#fff;padding:40px;border-radius:20px;box-shadow:0 18px 40px #0000001f}.detail-image{width:420px;border-radius:16px;box-shadow:0 20px 40px #0000002e,0 8px 16px #00000014}.detail-info{flex:1;max-width:420px;display:flex;flex-direction:column;justify-content:center}.detail-info h2{font-family:Dancing Script,cursive;font-size:48px;color:#5a3434;margin-bottom:12px}.detail-info p{font-family:Arial,sans-serif;font-size:17px;color:#555;line-height:1.6;margin-bottom:14px}.detail-info strong{font-size:18px;color:#333}.add-to-cart{width:160px;padding:14px 22px;background:#ff4d6d;color:#fff;border:none;border-radius:12px;font-size:18px;cursor:pointer;transition:all .25s ease}.add-to-cart:hover{background:#e63b5b;transform:translateY(-2px)}.cake-price{font-family:Dancing Script,cursive;font-size:30px;color:#5a3434;margin-bottom:20px}.login-container input{width:100%;padding:10px;border-radius:8px;border:1px solid #ccc}.login-container button{background:#ff4d6d;color:#fff;border:none;padding:10px 18px;border-radius:8px;cursor:pointer}.login-container h2{margin-bottom:20px;color:#5a3434;font-family:Dancing Script,cursive;font-size:40px}.checkout-btn{margin-top:20px;padding:12px 22px;background:#ff4d6d;color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:.2s}.checkout-btn:hover{background:#e63b5b;transform:translateY(-2px)}.ai-generate-btn{margin-top:15px;padding:10px 16px;background:#ff8fab;border:none;border-radius:8px;color:#fff;cursor:pointer}.designer-page{display:flex;justify-content:center;align-items:center;flex-direction:column;padding:60px 20px}.designer-card{background:#f6f3f3;padding:45px;border-radius:20px;width:900px;max-width:95%;box-shadow:0 10px 30px #00000014}.designer-back{background:#222;color:#fff;border:none;padding:10px 18px;border-radius:8px;margin-bottom:20px;cursor:pointer}.ai-preview-image{width:240px;margin-top:18px;border-radius:12px;box-shadow:0 6px 20px #00000026}.preview-3d canvas{width:260px!important;height:260px!important}.customizer-panel{background:#fff;padding:24px;border-radius:16px;box-shadow:0 10px 25px #0000001a}.layer-btn{background:#ff6b8b;color:#fff;padding:10px 16px;border-radius:10px}.designer-title{text-align:center;margin-bottom:25px;font-family:Dancing-script,cursive}.designer-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px 35px}.designer-layout{display:flex;gap:50px;margin-top:25px}.designer-controls{flex:1;display:flex;flex-direction:column;gap:18px}.designer-field{display:flex;flex-direction:column}.designer-field label{font-weight:600;margin-bottom:6px}.designer-field select{padding:12px;border-radius:10px;border:none;background:#5a5656;color:#fff}.designer-field select{padding:8px;border-radius:8px;border:1px solid #ccc;background:#575353}.generate-btn{margin-top:10px;padding:14px;border:none;background:#e7849a;color:#fff;font-weight:600;border-radius:12px;cursor:pointer}.generate-btn:hover{background:#d96b84;transform:translateY(-1px)}.preview-box{margin-top:25px;text-align:center}.preview-box img{width:300px;border-radius:12px;margin-top:10px;box-shadow:0 6px 18px #00000026}.designer-preview{margin-top:20px;text-align:center}.designer-preview h3{margin-bottom:15px}.preview-image{width:260px;border-radius:14px;box-shadow:0 8px 20px #00000026}.designer-preview{flex:1;text-align:center}.designer-preview img{width:260px;border-radius:14px;margin-top:15px;box-shadow:0 8px 20px #00000026}.preview-placeholder{margin-top:30px;padding:40px;border:2px dashed #ccc;border-radius:12px;color:#777}@media(max-width:900px){.hero{flex-direction:column;text-align:center;gap:40px}.hero-image img{width:320px}.search-bar{width:260px}.welcome-message{font-size:60px}.reviews{flex-direction:column;align-items:center}.detail-content{flex-direction:column;text-align:center}.detail-image{width:280px}}.customizer-panel{background:#ffffffd9;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:22px;box-shadow:0 18px 40px #00000014}.designer-controls>*{margin-bottom:14px}.section-title{font-size:18px;font-weight:600;color:#3a2a2a;margin-bottom:8px}.designer-field select:focus{outline:none;border:1px solid #ff6b8b;box-shadow:0 0 0 2px #ff6b8b33}.layer-btn{transition:all .2s ease;box-shadow:0 4px 10px #ff698740}.layer-btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px #ff698759}.toppings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.topping-btn{background:#fdf2f4;border-radius:16px;padding:12px;transition:all .2s ease;cursor:pointer}.topping-btn:hover{transform:translateY(-4px) scale(1.03);background:#ffe4ea;box-shadow:0 10px 25px #ff69874d}.preview-3d{background:linear-gradient(145deg,#fff,#f1f1f1);border-radius:30px;padding:30px;box-shadow:inset 0 2px 6px #fff9,0 20px 40px #0000001f}.price-highlight{background:linear-gradient(135deg,#fff,#ffe4ea);border-radius:14px;padding:12px 16px;box-shadow:inset 0 2px 6px #fff9;font-weight:600;color:#5a3434}.add-cart-btn{background:linear-gradient(135deg,#ff5f8f,#ff8fab);box-shadow:0 8px 20px #ff698759;border-radius:14px;transition:all .25s ease}.add-cart-btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px #ff698780}.designer-back{transition:all .2s ease}.preview-3d canvas{animation:floatCake 4s ease-in-out infinite}body{color:#2b2b2b;font-weight:500}.customizer-panel{background:#fffffff7;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:24px;box-shadow:0 25px 60px #00000014}.section-title{font-size:18px;font-weight:600;color:#2b2b2b;margin-bottom:12px}select{border:1px solid #ddd;background:#fff;transition:.2s ease}select:focus{border-color:#ff6b8b;box-shadow:0 0 0 2px #ff698733}.layer-btn{background:linear-gradient(135deg,#ff5f8f,#ff8fab);color:#fff;font-weight:600;border-radius:12px;box-shadow:0 8px 20px #ff69874d;transition:all .25s ease}.layer-btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px #ff698773}.toppings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.topping-btn{background:linear-gradient(145deg,#fff,#ffe4ea);border-radius:18px;padding:16px;color:#2b2b2b;font-weight:500;box-shadow:0 6px 15px #ff698726,inset 0 1px 2px #fff9;transition:all .25s ease}.topping-btn:hover{transform:translateY(-6px) scale(1.05);box-shadow:0 15px 30px #ff698759,inset 0 1px 2px #fff9}.price-highlight{background:linear-gradient(135deg,#fff,#ffdce5);border-radius:18px;padding:16px 20px;color:#2b2b2b;box-shadow:inset 0 2px 6px #fff9,0 6px 12px #0000000d}.add-cart-btn{background:linear-gradient(135deg,#ff5f8f,#ff8fab);border-radius:14px;font-weight:600;box-shadow:0 12px 25px #ff698766;transition:all .25s ease}.add-cart-btn:hover{transform:translateY(-3px);box-shadow:0 18px 35px #ff69878c}.preview-3d{background:radial-gradient(circle at top,#fff,#f3f3f3);border-radius:30px;padding:50px;box-shadow:inset 0 2px 6px #fff9,0 25px 50px #0000001f;display:flex;align-items:center;justify-content:center;animation:floatCake 5s ease-in-out infinite}@keyframes floatCake{0%{transform:translateY(0)}50%{transform:translateY(-14px)}to{transform:translateY(0)}}.designer-back{background:#1f1f1f;border-radius:10px;transition:.2s ease}.designer-back:hover{background:#333;transform:translateY(-1px)}.interactive-cake{transition:transform .25s ease;transform-style:preserve-3d;cursor:grab}@keyframes dropIn{0%{transform:translateY(-40px) scale(.7);opacity:0}70%{transform:translateY(10px) scale(1.1)}to{transform:translateY(0) scale(1);opacity:1}}.topping-btn:active{transform:scale(.92)}.layer-btn,.add-cart-btn{position:relative;overflow:hidden}.layer-btn:after,.add-cart-btn:after{content:"";position:absolute;width:120%;height:120%;background:radial-gradient(circle,rgba(255,255,255,.4),transparent);top:-100%;left:-100%;transition:.4s}.layer-btn:hover:after,.add-cart-btn:hover:after{top:0;left:0}.preview-3d{animation:floatCake 5s ease-in-out infinite}@keyframes floatCake{0%{transform:translateY(0)}50%{transform:translateY(-18px)}to{transform:translateY(0)}}@keyframes floatCake{0%{transform:translateY(0)}50%{transform:translateY(-12px)}to{transform:translateY(0)}}
