footer{background-color:#f5f5f5;flex-direction:column;width:100%;display:flex}.footer-main{flex-direction:column;justify-content:center;align-items:flex-start;gap:2rem;padding:2rem;display:flex}.footer-bottom{background-color:var(--orange-color);text-align:center;color:#fff;width:100%;padding:1.2rem 20px;font-size:.9rem;font-weight:500}.footer-bottom a{color:#fff;font-weight:700;text-decoration:none;display:inline-block}footer img{width:100px}footer .contact{margin-left:1rem}footer .contact h2{color:var(--orange-color);margin-bottom:1rem;font-size:1.6rem;font-style:italic;font-weight:400}footer .contact .contact-social{margin-bottom:1.5rem}footer .contact .contact-social .icon-link{color:inherit;align-items:center;text-decoration:none;display:flex}footer .contact .contact-social .icon-wrapper{background-color:var(--orange-color);color:#fff;border-radius:100%;justify-content:center;align-items:center;width:40px;height:40px;margin-right:1rem;display:flex}footer .contact .contact-social svg{display:block}@media (min-width:768px){.footer-main{flex-direction:row;justify-content:space-between;align-items:center;gap:0;padding:4rem 10%}.footer-text{text-align:left;max-width:300px}footer .footer-text p{padding:1rem 0}footer img{width:150px}footer .contact{margin-left:0}}
.floating-actions-wrapper{z-index:2000;pointer-events:none;position:fixed;top:20px;right:20px}.floating-action-bar{pointer-events:auto;-webkit-backdrop-filter:blur(12px);background:#ffffffd9;border:1px solid #ffffff4d;border-radius:40px;align-items:center;padding:6px;transition:all .4s cubic-bezier(.165,.84,.44,1);animation:.6s cubic-bezier(.165,.84,.44,1) slideInBar;display:flex;box-shadow:0 10px 30px #0000001a}@keyframes slideInBar{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.floating-action-bar:hover{background:#fffffff2;transform:translateY(-2px);box-shadow:0 15px 40px #00000026}.floating-user-section{align-items:center;display:flex}.login-btn-floating{color:#333;cursor:pointer;background:0 0;border:none;border-radius:30px;align-items:center;gap:10px;padding:8px 18px;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.login-btn-floating:hover{background:#0000000d}.user-profile-floating-wrapper{position:relative}.user-profile-floating{cursor:pointer;border:2px solid #fff;border-radius:50%;width:40px;height:40px;transition:transform .2s;overflow:hidden;box-shadow:0 2px 8px #0000001a}.user-avatar-floating{object-fit:cover;width:100%;height:100%}.user-dropdown-floating{opacity:0;visibility:hidden;z-index:100;background:#fff;border:1px solid #0000000d;border-radius:24px;min-width:240px;padding:12px 0;transition:all .4s cubic-bezier(.165,.84,.44,1);position:absolute;top:calc(100% + 15px);right:0;transform:translateY(15px);box-shadow:0 20px 50px #0003}.user-profile-floating-wrapper:hover .user-dropdown-floating{opacity:1;visibility:visible;transform:translateY(0)}.user-dropdown-header{flex-direction:column;gap:2px;padding:12px 24px;display:flex}.user-dropdown-header strong{color:#1a1a1a;font-size:1rem;font-weight:700}.user-dropdown-header span{color:#888;font-size:.8rem}.user-role-badge{color:#6e5ea5;letter-spacing:.5px;background:#f0f0ff;border-radius:10px;width:fit-content;margin-top:4px;padding:2px 8px;font-size:.65rem;font-weight:800}.user-dropdown-divider{background:#f0f0f0;height:1px;margin:8px 0}.user-dropdown-item{color:#444;text-align:left;cursor:pointer;width:100%;font-family:inherit;font-size:.95rem;font-weight:500;line-height:inherit;background:0 0;border:none;align-items:center;gap:12px;padding:12px 24px;text-decoration:none;transition:all .2s;display:flex}.admin-item{color:#6e5ea5;font-weight:700}.admin-item:hover{background:#f0f0ff}.user-dropdown-item:hover{color:var(--orange-color,#f39200);background:#f8f7ff;padding-left:28px}.logout-item{color:#ff4d4d}.logout-item:hover{color:#f33;background:#fff5f5}.floating-bar-divider{background:#e0e0e0;width:1px;height:24px;margin:0 8px}.floating-cart-link{text-decoration:none}.floating-cart-inner{background:var(--orange-color,#f39200);color:#fff;border-radius:30px;align-items:center;gap:10px;padding:6px 16px;transition:all .2s;display:flex}.floating-cart-inner:hover{filter:brightness(1.1);transform:scale(1.02)}.cart-icon-wrapper{align-items:center;display:flex;position:relative}.cart-badge{color:var(--orange-color,#f39200);background:#fff;border-radius:10px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.7rem;font-weight:800;display:flex;position:absolute;top:-8px;right:-10px;box-shadow:0 2px 5px #0000001a}.cart-price{letter-spacing:.5px;font-size:.95rem;font-weight:700}.login-modal-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:3000;pointer-events:auto;background:#0006;justify-content:center;align-items:center;width:100%;height:100vh;animation:.3s modalFadeIn;display:flex;position:fixed;top:0;left:0}.login-modal-content{background:#fff;border-radius:40px;width:90%;max-width:440px;padding:50px 40px;animation:.4s cubic-bezier(.175,.885,.32,1.275) modalPop;position:relative;box-shadow:0 30px 70px #00000040}.close-login-modal{cursor:pointer;color:#666;background:#f5f5f5;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex;position:absolute;top:25px;right:25px}.login-modal-body{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex}.login-modal-logo{object-fit:cover;background:#fff;border-radius:50%;width:100px;height:100px;margin-bottom:30px;box-shadow:0 10px 25px #0000001a}.login-modal-logo-placeholder{color:#6e5ea5;background-color:#f8f7ff;border-radius:50%;justify-content:center;align-items:center;width:100px;height:100px;margin-bottom:30px;font-size:2.5rem;font-weight:800;display:flex}.login-modal-body h2{color:#111;letter-spacing:-1.5px;text-align:center;margin:0 0 16px;font-size:2.6rem;font-weight:800;line-height:1.1}.login-modal-body p{color:#555;text-align:center;max-width:340px;margin-bottom:40px;font-size:1.15rem;line-height:1.6}.google-login-btn-modal{color:#1e293b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:20px;justify-content:center;align-items:center;gap:12px;width:100%;padding:18px;font-size:1.15rem;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 4px 6px -1px #0000000d}.google-login-btn-modal:hover{background:#f8fafc;border-color:#cbd5e1;transform:translateY(-2px);box-shadow:0 10px 30px -5px #00000014}@media (max-width:768px){.floating-actions-wrapper{inset:auto auto 25px 50%;transform:translate(-50%)}.floating-action-bar{-webkit-backdrop-filter:none;box-shadow:none;background:0 0;border:none;padding:0}.is-logged-out .login-btn-floating,.is-logged-out .floating-bar-divider{display:none}.user-dropdown-floating{min-width:220px;inset:auto auto 120% 50%;transform:translate(-50%)translateY(10px)}.user-profile-floating-wrapper:hover .user-dropdown-floating{transform:translate(-50%)translateY(0)}}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalPop{0%{opacity:0;transform:scale(.9)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}@media (max-width:480px){.login-modal-overlay{-webkit-backdrop-filter:blur(4px)}.login-modal-content{border-radius:30px;padding:40px 25px}.login-modal-body h2{font-size:2rem}}
.form{text-align:center;background-color:gray;flex-direction:column;justify-content:center;align-items:center;min-height:40vh;padding:30px 0;display:flex}.form h2{color:#fff;margin-bottom:1rem;font-style:italic;font-weight:700}.form p{background-color:var(--orange-color);color:#fff;margin-bottom:2rem;padding:0 5px;font-size:1.3rem;font-style:italic}.form form{flex-direction:column;justify-content:center;align-items:flex-start;gap:2rem;width:90%;max-width:800px;margin:0 auto;display:flex}.form form .form__group{flex-direction:column;align-items:flex-start;gap:.5rem;width:100%;padding:.3rem 0;display:flex}.form form .form__group label{color:#fff;font-size:1.3rem;font-weight:700}.form form .form__group input{color:#000;background-color:#fff;border:none;border-radius:10px;width:100%;padding:.8rem;font-size:1.1rem}.form form .form__group textarea{color:#000;resize:none;background-color:#fff;border:none;border-radius:10px;width:100%;height:8rem;padding:.8rem;font-size:1.1rem}.form button.btn-pieza-clave{padding:10px 40px;font-size:1rem}@media (min-width:768px){.form form{width:40%}.form button.btn-pieza-clave{align-self:flex-end;width:fit-content;min-width:auto}}
