.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background-color:#0b090aa6;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;justify-content:center;align-items:center;z-index:10000;padding:1rem;box-sizing:border-box;animation:fadeIn .2s ease-out}.modal-container,.modal-box{position:relative;background-color:var(--color-white, #ffffff);border-radius:20px;width:100%;max-width:min(440px,calc(100% - 1rem));padding:2.25rem 2rem 2rem;box-shadow:0 20px 40px #00000040,0 0 0 1px #0000000a;color:var(--color-carbon-black-500, #161a1d);font-family:var(--font-roboto, "Roboto", sans-serif);max-height:90vh;overflow-y:auto;box-sizing:border-box;margin:0 auto}.modal-header{display:flex;justify-content:center;align-items:center;position:relative;margin-bottom:1.5rem;border-bottom:none}.modal-title,.modal-header h2,.modal-header h3{margin:0;font-size:1.5rem;font-weight:700;color:var(--color-onyx-500, #0b090a);text-align:center;font-family:var(--font-roboto, "Roboto", sans-serif);letter-spacing:-.015em}.modal-close-btn,.modal-close{position:absolute;top:0;right:0;width:36px;height:36px;border-radius:50%;border:none;background-color:var(--color-white-smoke-500, #f5f3f4);color:var(--color-carbon-black-700, #657786);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.modal-close-btn:hover,.modal-close:hover{background-color:var(--color-dust-grey-700, #e5e5e5);color:var(--color-onyx-500, #0b090a);transform:scale(1.05)}.auth-tabs{display:flex;background-color:var(--color-white-smoke-500, #f5f3f4);padding:4px;border-radius:12px;margin-bottom:1.5rem;gap:4px}.auth-tab-btn{flex:1;padding:.65rem 1rem;background:transparent;border:none;border-radius:9px;color:var(--color-carbon-black-700, #657786);font-family:var(--font-roboto, "Roboto", sans-serif);font-weight:500;font-size:.9rem;cursor:pointer;transition:all .2s ease;text-align:center}.auth-tab-btn:hover{color:var(--color-onyx-500, #0b090a)}.auth-tab-btn.active{background-color:var(--color-white, #ffffff);color:var(--color-mahogany-red-500, #ba181b);font-weight:700;box-shadow:0 2px 8px #00000014}.modal-field,.form-group{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1rem}.modal-label,.form-group label{display:flex;align-items:center;gap:6px;font-size:.875rem;font-weight:500;color:var(--color-carbon-black-500, #161a1d);font-family:var(--font-roboto, "Roboto", sans-serif)}.modal-input,.form-group input,.form-group select,.form-group textarea{box-sizing:border-box;width:100%;height:48px;padding:0 1rem;background-color:var(--color-white-smoke-500, #f5f3f4);border:1px solid var(--color-dust-grey-700, #e5e5e5);border-radius:12px;color:var(--color-onyx-500, #0b090a);font-size:1rem;font-family:var(--font-roboto, "Roboto", sans-serif);transition:all .2s ease}.form-group textarea{height:100px;padding:.75rem 1rem;resize:vertical}.modal-input::placeholder,.form-group input::placeholder{color:var(--color-carbon-black-700, #657786);opacity:.7}.modal-input:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;background-color:var(--color-white, #ffffff);border-color:var(--color-strawberry-red-500, #e5383b);box-shadow:0 0 0 3px #e5383b26}.modal-error-box{background-color:#e5383b14;border:1px solid rgba(229,56,59,.3);border-radius:10px;padding:.75rem 1rem;margin-bottom:1.25rem;color:var(--color-mahogany-red-500, #ba181b);font-size:.875rem;font-weight:500}.modal-btn-primary,.btn-confirmar{box-sizing:border-box;width:100%;height:48px;background-color:var(--color-strawberry-red-500, #e5383b);color:var(--color-white, #ffffff);border:none;border-radius:24px;font-family:var(--font-roboto, "Roboto", sans-serif);font-size:1rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #e5383b4d;transition:all .2s ease;margin-top:.5rem}.modal-btn-primary:hover,.btn-confirmar:hover{background-color:var(--color-strawberry-red-400, #ca1a1d);box-shadow:0 6px 18px #e5383b73;transform:translateY(-1px)}.modal-btn-primary:active,.btn-confirmar:active{transform:translateY(0)}.modal-btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}@keyframes fadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@media(max-width:480px){.modal-overlay{padding:.75rem}.modal-container,.modal-box{padding:1.5rem 1.1rem;border-radius:16px;max-width:100%;box-sizing:border-box}.modal-close-btn,.modal-close{top:.25rem;right:.25rem;width:32px;height:32px}}.header-container{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6rem 1.5rem 4rem;box-sizing:border-box;width:100%}.header-top-bar{position:fixed;top:1rem;left:50%;transform:translate(-50%);width:calc(100% - 3rem);max-width:1200px;display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;background:#161a1dbf;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(229,56,59,.2);border-radius:50px;box-shadow:0 10px 30px #00000080;z-index:100;transition:all .3s ease}.brand-pill{display:flex;align-items:center;gap:.75rem}.header-mini-logo{width:36px;height:36px;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4))}.brand-name{color:var(--color-white-smoke);letter-spacing:var(--ls-wide);font-size:var(--fs-base)}.auth-buttons-group{display:flex;align-items:center;gap:.75rem}.btn-header-auth{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1.25rem;border-radius:30px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-decoration:none}.btn-header-auth.login{background:#0b090a99;color:var(--color-white-smoke);border:1px solid var(--color-carbon-black-600)}.btn-header-auth.login:hover{background:var(--color-carbon-black-500);border-color:var(--color-strawberry-red);color:var(--color-strawberry-red-600);transform:translateY(-2px);box-shadow:0 4px 12px #e5383b40}.btn-header-auth.register{background:linear-gradient(135deg,var(--color-dark-garnet-500) 0%,var(--color-strawberry-red-500) 100%);color:var(--color-white);border:none;box-shadow:0 4px 14px #e5383b66}.btn-header-auth.register:hover{background:linear-gradient(135deg,var(--color-dark-garnet-600) 0%,var(--color-strawberry-red-600) 100%);transform:translateY(-2px);box-shadow:0 6px 20px #e5383b99}.btn-header-auth.dashboard{background:#161a1dd9;color:var(--color-strawberry-red-700);border:1px solid var(--color-strawberry-red-500)}.btn-header-auth.dashboard:hover{background:var(--color-strawberry-red-500);color:var(--color-white);transform:translateY(-2px);box-shadow:0 4px 14px #e5383b66}.btn-header-auth.logout{background:#66070833;border:1px solid rgba(229,56,59,.4);color:var(--color-strawberry-red-700)}.btn-header-auth.logout:hover{background:var(--color-dark-garnet-500);color:var(--color-white);border-color:var(--color-dark-garnet-600);transform:translateY(-2px)}.hero-content-card{max-width:720px;width:100%;padding:3rem 2.5rem;background:#0b090ab8;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(211,211,211,.15);border-radius:28px;box-shadow:0 20px 50px #0009,inset 0 1px #ffffff1a;text-align:center;display:flex;flex-direction:column;align-items:center;animation:heroCardAppear .8s cubic-bezier(.16,1,.3,1) forwards}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem 1rem;background:#e5383b26;border:1px solid rgba(229,56,59,.4);border-radius:20px;color:var(--color-strawberry-red-600);margin-bottom:1.5rem}.badge-icon{color:var(--color-strawberry-red)}.logo-img{width:180px;height:auto;margin-bottom:1.25rem;filter:drop-shadow(0 8px 24px rgba(229,56,59,.3));transition:transform .4s ease}.logo-img:hover{transform:scale(1.05)}.hero-title{color:var(--color-white);margin:0 0 1rem;font-family:var(--font-serif);text-shadow:0 4px 12px rgba(0,0,0,.7)}.hero-description{color:var(--color-dust-grey-700);max-width:580px;margin:0 auto 2rem;line-height:var(--lh-relaxed)}.hero-actions{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap;width:100%;margin-bottom:2rem}.btn-hero-primary{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:1rem 2.2rem;background:linear-gradient(135deg,var(--color-mahogany-red-500) 0%,var(--color-strawberry-red-500) 100%);color:var(--color-white);border-radius:40px;text-decoration:none;box-shadow:0 8px 25px #e5383b73;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid rgba(255,255,255,.2)}.btn-hero-primary:hover{background:linear-gradient(135deg,var(--color-mahogany-red-600) 0%,var(--color-strawberry-red-600) 100%);transform:translateY(-3px) scale(1.02);box-shadow:0 12px 30px #e5383b99}.btn-hero-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:1rem 1.8rem;background:#161a1dcc;color:var(--color-white-smoke);border:1px solid var(--color-carbon-black-600);border-radius:40px;text-decoration:none;transition:all .3s ease}.btn-hero-secondary:hover{background:var(--color-carbon-black-500);border-color:var(--color-dust-grey-500);color:var(--color-white);transform:translateY(-3px)}.hero-content-card .social-icons{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:.5rem}.social-btn{display:inline-flex;align-items:center;gap:.6rem;padding:.6rem 1.35rem;border-radius:30px;background:#161a1dd9;border:1px solid rgba(255,255,255,.15);color:var(--color-white)!important;text-decoration:none;font-size:var(--fs-sm);font-weight:var(--fw-medium);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #0000004d}.social-btn svg{transition:transform .3s ease,color .3s ease}.social-btn.facebook{background:#1877f226;border-color:#1877f266;color:#fff!important}.social-btn.facebook svg{color:#1877f2}.social-btn.facebook:hover{background:#1877f2;border-color:#1877f2;color:#fff!important;transform:translateY(-3px);box-shadow:0 6px 18px #1877f273}.social-btn.facebook:hover svg{color:#fff;transform:scale(1.15)}.social-btn.instagram{background:#e4405f26;border-color:#e4405f66;color:#fff!important}.social-btn.instagram svg{color:#e4405f}.social-btn.instagram:hover{background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045);border-color:transparent;color:#fff!important;transform:translateY(-3px);box-shadow:0 6px 18px #e4405f73}.social-btn.instagram:hover svg{color:#fff;transform:scale(1.15)}@keyframes heroCardAppear{0%{opacity:0;transform:translateY(30px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:768px){.header-container{padding:5.5rem 1rem 2rem}.header-top-bar{width:calc(100% - 1.5rem);padding:.6rem 1rem;top:.75rem}.brand-name{display:none}.hero-content-card{padding:2rem 1.25rem;border-radius:20px}.logo-img{width:140px}.hero-title{font-size:2.1rem}.hero-description{font-size:.95rem}.btn-hero-primary,.btn-hero-secondary{width:100%;box-sizing:border-box;padding:.85rem 1.2rem}.btn-header-auth span{display:none}.btn-header-auth{padding:.5rem;border-radius:50%}}.footer-container{width:100%;max-width:1200px;margin:0 auto;padding:4rem 1.5rem 2rem;box-sizing:border-box;display:flex;flex-direction:column;gap:3.5rem}.footer-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.75rem;width:100%}.info-card{background:#0b090ac7;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(211,211,211,.15);border-radius:24px;padding:2rem;box-shadow:0 15px 35px #00000080;display:flex;flex-direction:column;justify-content:space-between;transition:all .3s cubic-bezier(.4,0,.2,1)}.info-card:hover{transform:translateY(-4px);border-color:#e5383b59;box-shadow:0 20px 45px #000000b3}.info-card-header{display:flex;align-items:center;gap:.85rem;margin-bottom:1.25rem}.info-icon-box{width:44px;height:44px;border-radius:14px;background:#e5383b26;border:1px solid rgba(229,56,59,.3);color:var(--color-strawberry-red-600);display:flex;align-items:center;justify-content:center;flex-shrink:0}.info-title{color:var(--color-white);margin:0;font-family:var(--font-serif)}.info-text{color:var(--color-dust-grey-700);margin:0 0 1.25rem;line-height:var(--lh-normal)}.footer-link{color:var(--color-strawberry-red-700);text-decoration:none;display:inline-flex;align-items:center;gap:.4rem;transition:color .3s ease}.footer-link:hover{color:var(--color-strawberry-red);text-decoration:underline}.inline-icon{opacity:.8}.map-wrapper{width:100%;height:180px;border-radius:16px;overflow:hidden;border:1px solid rgba(211,211,211,.12);box-shadow:0 4px 15px #0006}.map-wrapper iframe{width:100%;height:100%;border:none}.schedule-list{display:flex;flex-direction:column;gap:.85rem;margin-bottom:1.5rem;background:#161a1d99;padding:1.2rem;border-radius:16px;border:1px solid rgba(211,211,211,.08)}.schedule-item{display:flex;justify-content:space-between;align-items:center;gap:.5rem;flex-wrap:wrap}.schedule-day{color:var(--color-white-smoke)}.schedule-hours{color:var(--color-strawberry-red-600)}.ambiance-note{display:flex;align-items:center;gap:.5rem;color:var(--color-dust-grey-700)}.phone-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:.9rem 1.5rem;background:linear-gradient(135deg,var(--color-dark-garnet-500) 0%,var(--color-strawberry-red-500) 100%);color:var(--color-white);border-radius:30px;text-decoration:none;box-shadow:0 6px 20px #e5383b66;transition:all .3s ease;margin-top:1rem}.phone-btn:hover{background:linear-gradient(135deg,var(--color-dark-garnet-600) 0%,var(--color-strawberry-red-600) 100%);transform:translateY(-2px);box-shadow:0 8px 25px #e5383b99}.footer-bottom-bar{display:flex;align-items:center;justify-content:space-between;padding-top:2rem;border-top:1px solid rgba(211,211,211,.15);flex-wrap:wrap;gap:1.5rem}.footer-brand{display:flex;align-items:center;gap:.85rem}.footer-logo{height:38px;width:auto;filter:drop-shadow(0 2px 8px rgba(0,0,0,.5))}.brand-subtitle{color:var(--color-dust-grey-700);border-left:1px solid rgba(211,211,211,.2);padding-left:.85rem}.footer-copy{color:var(--color-dust-grey-700);margin:0}.footer-socials{display:flex;align-items:center;gap:.75rem}.social-link{color:var(--color-dust-grey-700);text-decoration:none;display:inline-flex;align-items:center;gap:.4rem;transition:all .3s ease}.social-link.facebook svg{color:#1877f2;transition:transform .3s ease}.social-link.facebook:hover{color:#fff}.social-link.facebook:hover svg{transform:scale(1.15)}.social-link.instagram svg{color:#e4405f;transition:transform .3s ease}.social-link.instagram:hover{color:#fff}.social-link.instagram:hover svg{transform:scale(1.15)}.social-divider{color:var(--color-carbon-black-700)}@media(max-width:768px){.footer-container{padding:3rem 1rem 1.5rem;gap:2.5rem}.footer-info-grid{grid-template-columns:1fr}.info-card{padding:1.5rem}.footer-bottom-bar{flex-direction:column;text-align:center;gap:1rem}.brand-subtitle{border-left:none;padding-left:0}}.carousel-section{width:100%;max-width:1100px;margin:0 auto;padding:4rem 1.5rem;box-sizing:border-box}.carousel-header{text-align:center;margin-bottom:2.5rem;display:flex;flex-direction:column;align-items:center}.section-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .9rem;background:#e5383b1f;border:1px solid rgba(229,56,59,.3);border-radius:20px;color:var(--color-strawberry-red-600);margin-bottom:.75rem}.section-title{color:var(--color-white);margin:0 0 .5rem;font-family:var(--font-serif);text-shadow:0 2px 8px rgba(0,0,0,.5)}.section-subtitle{color:var(--color-dust-grey-700);max-width:500px;margin:0}.carousel-container{position:relative;width:100%;max-width:780px;margin:0 auto;display:flex;flex-direction:column;align-items:center}.carousel-wrapper{width:100%;overflow:hidden;border-radius:24px;background:#0b090acc;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(211,211,211,.15);box-shadow:0 15px 40px #0009}.carousel-track{display:flex;transition:transform .5s cubic-bezier(.25,1,.5,1);width:100%;touch-action:pan-y}.carousel-slide{min-width:100%;box-sizing:border-box}.carousel-card-inner{display:flex;flex-direction:column;width:100%;overflow:hidden}.carousel-image-box{position:relative;width:100%;height:420px;overflow:hidden;background:var(--color-onyx-500, #0b090a);display:flex;align-items:center;justify-content:center}.carousel-image-blur{position:absolute;top:-20px;right:-20px;bottom:-20px;left:-20px;width:calc(100% + 40px);height:calc(100% + 40px);object-fit:cover;filter:blur(24px) brightness(.35);opacity:.9;transform:scale(1.1);pointer-events:none}.carousel-image{position:relative;z-index:2;width:100%;height:100%;object-fit:contain;object-position:center;transition:transform .6s ease}.carousel-slide:hover .carousel-image{transform:scale(1.03)}.dish-number{position:absolute;top:1rem;right:1rem;z-index:5;background:#0b090acc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--color-strawberry-red-600);padding:.3rem .75rem;border-radius:12px;border:1px solid rgba(229,56,59,.3)}.carousel-info-box{padding:1.75rem 2rem;text-align:center;background:linear-gradient(180deg,#161a1df2,#0b090af2);display:flex;flex-direction:column;align-items:center}.carousel-caption-title{color:var(--color-white);margin:0 0 .5rem;font-family:var(--font-serif)}.carousel-caption-desc{color:var(--color-dust-grey-700);margin:0 0 1.25rem;max-width:480px}.carousel-cta-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.4rem;background:#e5383b26;color:var(--color-strawberry-red-600);border:1px solid rgba(229,56,59,.4);border-radius:30px;text-decoration:none;transition:all .3s ease}.carousel-cta-btn:hover{background:var(--color-strawberry-red-500);color:var(--color-white);border-color:var(--color-strawberry-red-600);transform:translateY(-2px);box-shadow:0 4px 14px #e5383b66}.carousel-arrow{position:absolute;top:40%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;background:#0b090abf;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(211,211,211,.2);color:var(--color-white);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:all .3s ease;box-shadow:0 4px 15px #00000080}.carousel-arrow.prev{left:-24px}.carousel-arrow.next{right:-24px}.carousel-arrow:hover{background:var(--color-strawberry-red-500);border-color:var(--color-strawberry-red-600);color:var(--color-white);transform:translateY(-50%) scale(1.1)}.carousel-indicators{display:flex;justify-content:center;align-items:center;gap:.6rem;margin-top:1.5rem}.indicator-dot{width:10px;height:10px;background:#d3d3d34d;border-radius:50%;border:none;cursor:pointer;transition:all .3s ease;padding:0}.indicator-dot.active{width:28px;border-radius:10px;background:var(--color-strawberry-red-500);box-shadow:0 0 10px #e5383b99}@media(max-width:768px){.carousel-section{padding:3rem 1rem}.carousel-image-box{height:260px}.carousel-info-box{padding:1.25rem 1rem}.carousel-arrow{width:38px;height:38px}.carousel-arrow.prev{left:8px}.carousel-arrow.next{right:8px}}.app-background{min-height:100vh;width:100%;background-image:url(/assets/bg-koi-side-desktop.webp);background-size:cover;background-position:center;background-attachment:fixed;background-repeat:no-repeat;position:relative;overflow-x:clip}@media(max-width:768px){.app-background{background-image:url(/assets/bg-koi-side-mobile.webp);background-size:cover;background-position:center}}.app-background:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0b090a73;z-index:0;pointer-events:none}.home-main-layout{position:relative;z-index:1;width:100%;box-sizing:border-box}html{scroll-behavior:smooth;background-color:var(--color-onyx-500)}.header-wrapper{width:100%;position:relative;z-index:1000;background:transparent}.header-menu{background:#0b090aeb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:.85rem 1.75rem;border-bottom:1px solid rgba(229,56,59,.25);border-radius:0;width:100%;box-sizing:border-box;box-shadow:0 4px 20px #00000080;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;transition:all .3s ease}.header-left,.header-center,.header-right{flex:1;display:flex;align-items:center}.header-left{justify-content:flex-start}.address-pill{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#161a1dbf;border:1px solid rgba(255,255,255,.12);border-radius:30px;color:var(--color-white-smoke);font-size:var(--fs-sm);text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.address-pill:hover{background:var(--color-carbon-black-500);border-color:#e5383b66;color:var(--color-white);transform:translateY(-2px);box-shadow:0 4px 14px #e5383b33}.location-icon{color:var(--color-strawberry-red-500)}.header-center{justify-content:center}.header-brand-link{display:flex;flex-direction:column;align-items:center;gap:.25rem;text-decoration:none;transition:transform .3s ease}.header-brand-link:hover{transform:scale(1.03)}.header-menu-logo{width:90px;height:auto;max-height:90px;object-fit:contain;filter:drop-shadow(0 4px 12px rgba(229,56,59,.35))}.header-brand-title{font-size:1.5rem;margin:0;color:var(--color-white);font-family:var(--font-serif);letter-spacing:var(--ls-wide);text-shadow:0 2px 10px rgba(229,56,59,.4)}.header-right{flex-direction:column;align-items:flex-end;justify-content:center;gap:.6rem}.menu-auth-container{display:flex;flex-direction:column;align-items:flex-end}.menu-user-box{display:flex;flex-direction:column;align-items:flex-end;gap:.3rem}.menu-user-greeting{font-size:var(--fs-xs);color:var(--color-dust-grey-800);letter-spacing:.02em}.menu-auth-buttons{display:flex;align-items:center;gap:.6rem}.btn-menu-auth{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1.1rem;border-radius:30px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-decoration:none}.btn-menu-auth.login{background:#161a1dcc;color:var(--color-white-smoke);border:1px solid var(--color-carbon-black-600)}.btn-menu-auth.login:hover{background:var(--color-carbon-black-500);border-color:var(--color-strawberry-red-500);color:var(--color-strawberry-red-600);transform:translateY(-2px);box-shadow:0 4px 12px #e5383b40}.btn-menu-auth.register{background:linear-gradient(135deg,var(--color-dark-garnet-500) 0%,var(--color-strawberry-red-500) 100%);color:var(--color-white);border:none;box-shadow:0 4px 14px #e5383b66}.btn-menu-auth.register:hover{background:linear-gradient(135deg,var(--color-dark-garnet-600) 0%,var(--color-strawberry-red-600) 100%);transform:translateY(-2px);box-shadow:0 6px 20px #e5383b99}.btn-menu-auth.dashboard{background:#161a1dd9;color:var(--color-strawberry-red-700);border:1px solid var(--color-strawberry-red-500)}.btn-menu-auth.dashboard:hover{background:var(--color-strawberry-red-500);color:var(--color-white);transform:translateY(-2px);box-shadow:0 4px 14px #e5383b66}.btn-menu-auth.logout{background:#66070833;border:1px solid rgba(229,56,59,.4);color:var(--color-strawberry-red-700)}.btn-menu-auth.logout:hover{background:var(--color-dark-garnet-500);color:var(--color-white);transform:translateY(-2px)}.header-menu .social-icons{display:flex;gap:.6rem;align-items:center}.social-icon-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#161a1dcc;border:1px solid rgba(255,255,255,.12);color:var(--color-dust-grey-800);transition:all .3s cubic-bezier(.4,0,.2,1);text-decoration:none}.social-icon-btn.instagram:hover{background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045);border-color:transparent;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #e4405f66}.social-icon-btn.facebook:hover{background:#1877f2;border-color:#1877f2;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #1877f266}@media(max-width:768px){.header-menu{flex-direction:column;padding:.85rem 1rem;gap:.85rem;border-radius:0 0 16px 16px}.header-left,.header-center,.header-right{justify-content:center;align-items:center;width:100%}.address-pill span{font-size:var(--fs-xs)}.header-menu-logo{width:70px}.header-brand-title{font-size:1.25rem}.header-right,.menu-auth-container,.menu-user-box{align-items:center}}.search-section{padding:.75rem 1rem;background:transparent;max-width:1200px;margin:0 auto;box-sizing:border-box}.search-bar{display:flex;align-items:center;gap:.75rem;background:#161a1dd9;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(229,56,59,.25);border-radius:35px;padding:.7rem 1.25rem;box-shadow:0 8px 24px #0006;transition:all .3s cubic-bezier(.4,0,.2,1)}.search-bar:focus-within{border-color:var(--color-strawberry-red-500);box-shadow:0 0 18px #e5383b66;background:#161a1df2}.search-icon{color:var(--color-strawberry-red-500);flex-shrink:0;transition:transform .2s ease}.search-bar:focus-within .search-icon{transform:scale(1.1)}.search-bar input{border:none;background:transparent;outline:none;flex-grow:1;font-size:1rem;color:var(--color-white-smoke);font-family:var(--font-roboto)}.search-bar input::placeholder{color:var(--color-dust-grey-400)}.categories-section{padding:.5rem 0 .85rem;background:transparent;overflow-x:auto;white-space:nowrap;scrollbar-width:thin;scrollbar-color:rgba(229,56,59,.4) transparent}.categories-section::-webkit-scrollbar{height:4px}.categories-section::-webkit-scrollbar-thumb{background:#e5383b66;border-radius:4px}.category-pills-container{display:flex;gap:.75rem;padding:.25rem 1rem;max-width:1200px;margin:0 auto}.category-pill{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;cursor:pointer;padding:.6rem .85rem;min-width:95px;flex-shrink:0;border-radius:16px;background:#161a1dbf;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 12px #0000004d;transition:all .3s cubic-bezier(.4,0,.2,1)}.category-pill:hover{transform:translateY(-3px);background:var(--color-carbon-black-500);border-color:#e5383b66;box-shadow:0 6px 16px #e5383b33}.icon-wrapper{background:#ffffff14;border-radius:50%;width:44px;height:44px;display:flex;justify-content:center;align-items:center;margin-bottom:6px;color:var(--color-strawberry-red-500);font-size:1.2em;transition:all .3s ease}.category-pill:hover .icon-wrapper{transform:scale(1.08);color:var(--color-strawberry-red-600)}.category-pill span{font-size:var(--fs-xs);color:var(--color-dust-grey-800);font-weight:var(--fw-medium);font-family:var(--font-roboto);word-break:break-word;white-space:normal;line-height:1.2}.category-pill.active{background:linear-gradient(135deg,var(--color-dark-garnet-500) 0%,var(--color-strawberry-red-500) 100%);border-color:var(--color-strawberry-red-600);box-shadow:0 6px 20px #e5383b80;transform:translateY(-3px)}.category-pill.active .icon-wrapper{background:#ffffff38;color:#fff}.category-pill.active span{color:#fff;font-weight:var(--fw-bold);text-shadow:0 1px 4px rgba(0,0,0,.4)}.product-card{display:flex;justify-content:space-between;gap:1.25rem;background:#161a1dd1;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.1);border-left:4px solid var(--color-strawberry-red-500);border-radius:20px;padding:1.25rem;box-shadow:0 10px 30px #00000080,inset 0 1px #ffffff0d;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.product-card:hover{transform:translateY(-4px);background:#161a1deb;border-color:#e5383b66;border-left-color:var(--color-strawberry-red-600);box-shadow:0 14px 40px #000000b3,0 0 20px #e5383b40}.product-card .info{flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:.4rem}.product-card .info h3{font-size:1.15rem;font-weight:var(--fw-bold);color:var(--color-white);margin:0 0 .2rem;line-height:1.3;font-family:var(--font-roboto)}.product-card .description{font-size:var(--fs-xs);color:var(--color-dust-grey-800);line-height:1.45;white-space:pre-line;margin:0;flex-grow:1}.product-card .price{font-size:1.15rem;font-weight:var(--fw-bold);color:var(--color-strawberry-red-600);margin:.25rem 0;letter-spacing:.01em}.image-container{position:relative;flex-shrink:0;width:110px;height:95px;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.image-container img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.product-card:hover .image-container img{transform:scale(1.08)}.favorite-btn{position:absolute;top:.75rem;right:.75rem;z-index:5;width:30px;height:30px;border-radius:50%;background:#0b090ab3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.15);color:var(--color-dust-grey-700);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.favorite-btn:hover{color:var(--color-strawberry-red-500);transform:scale(1.1);background:#0b090ae6}.favorite-btn.active{color:var(--color-strawberry-red-500);border-color:var(--color-strawberry-red-500);box-shadow:0 0 10px #e5383b66}.favorite-btn.active svg{fill:var(--color-strawberry-red-500)}.add-to-cart-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem 1.1rem;border-radius:25px;background:linear-gradient(135deg,var(--color-mahogany-red-500) 0%,var(--color-strawberry-red-500) 100%);color:var(--color-white);border:none;font-size:var(--fs-xs);font-weight:var(--fw-bold);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #e5383b59;align-self:flex-start;margin-top:.25rem}.add-to-cart-btn:hover{background:linear-gradient(135deg,var(--color-mahogany-red-600) 0%,var(--color-strawberry-red-600) 100%);transform:translateY(-2px);box-shadow:0 6px 18px #e5383b80}.add-to-cart-btn.added{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 14px #10b98166}.cart-icon-btn{position:fixed;bottom:2rem;right:2rem;z-index:1500;background:linear-gradient(135deg,#d4af37,#c49a20);border:none;border-radius:50%;width:60px;height:60px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 20px #d4af3780;transition:transform .2s ease,box-shadow .2s ease}.cart-icon-btn:hover{transform:scale(1.08);box-shadow:0 6px 28px #d4af37a6}.cart-icon-btn.pulse{animation:cart-pulse .4s ease}@keyframes cart-pulse{0%{transform:scale(1)}50%{transform:scale(1.18)}to{transform:scale(1)}}.cart-icon-btn svg{color:#1a1a2e;width:26px;height:26px}.cart-badge{position:absolute;top:-4px;right:-4px;background:#e74c3c;color:#fff;border-radius:50%;min-width:22px;height:22px;font-size:.72rem;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid #1a1a2e;padding:0 4px}.cart-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:8000;opacity:0;animation:fadeInOverlay .25s forwards;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@keyframes fadeInOverlay{to{opacity:1}}.cart-drawer{position:fixed;top:0;right:0;bottom:0;width:min(420px,100vw);background:#1a1a2e;z-index:8001;display:flex;flex-direction:column;box-shadow:-8px 0 40px #0006;transform:translate(100%);animation:slideInDrawer .3s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes slideInDrawer{to{transform:translate(0)}}.cart-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#0d0d1a,#1a1a2e);border-bottom:1px solid rgba(212,175,55,.2)}.cart-drawer-header h2{font-family:Outfit,sans-serif;font-size:1.2rem;color:#d4af37;margin:0;display:flex;align-items:center;gap:.5rem}.cart-close-btn{background:none;border:none;color:#aaa;cursor:pointer;padding:6px;border-radius:6px;transition:color .2s,background .2s}.cart-close-btn:hover{color:#fff;background:#ffffff14}.cart-items{flex:1;overflow-y:auto;padding:1rem 1.5rem;display:flex;flex-direction:column;gap:1rem}.cart-items::-webkit-scrollbar{width:4px}.cart-items::-webkit-scrollbar-track{background:transparent}.cart-items::-webkit-scrollbar-thumb{background:#d4af374d;border-radius:2px}.cart-item{display:flex;gap:1rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:.85rem;transition:border-color .2s}.cart-item:hover{border-color:#d4af3740}.cart-item-image{width:64px;height:64px;border-radius:8px;object-fit:cover;flex-shrink:0;background:#0d0d1a}.cart-item-info{flex:1;min-width:0}.cart-item-name{font-family:Outfit,sans-serif;font-size:.9rem;font-weight:600;color:#f0f0f0;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cart-item-price{font-size:.82rem;color:#d4af37;margin:0 0 8px}.cart-item-controls{display:flex;align-items:center;gap:.5rem}.cart-qty-btn{width:28px;height:28px;border-radius:6px;border:1px solid rgba(212,175,55,.4);background:#d4af371a;color:#d4af37;font-size:1.1rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s;line-height:1}.cart-qty-btn:hover{background:#d4af3740}.cart-qty{min-width:24px;text-align:center;font-size:.9rem;font-weight:600;color:#f0f0f0}.cart-item-subtotal{font-weight:700;font-size:.88rem;color:#f0f0f0;margin-left:auto;white-space:nowrap}.cart-item-notes-input{width:100%;margin-top:8px;padding:6px 10px;background:#161a1d;border:1px solid #3d4951;border-radius:6px;color:#cbd2d8;font-size:.78rem;font-family:var(--font-roboto, "Roboto", sans-serif);outline:none;transition:border-color .2s,box-shadow .2s}.cart-item-notes-input:focus{border-color:#ba181b;box-shadow:0 0 0 2px #ba181b33;color:#fff}.cart-item-notes-input::placeholder{color:#657786}.cart-item-remove{background:none;border:none;color:#666;cursor:pointer;padding:4px;border-radius:4px;transition:color .2s;align-self:flex-start}.cart-item-remove:hover{color:#e74c3c}.cart-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:#666;text-align:center;padding:2rem}.cart-empty svg{width:64px;height:64px;color:#333}.cart-empty p{font-size:1rem;margin:0}.cart-footer{padding:1.25rem 1.5rem;border-top:1px solid rgba(255,255,255,.08);background:#0003}.cart-totals{margin-bottom:1rem}.cart-total-row{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:#aaa;margin-bottom:4px}.cart-total-row.main{font-size:1rem;font-weight:700;color:#f0f0f0;margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.1)}.cart-total-row.main span:last-child{color:#d4af37;font-size:1.1rem}.btn-checkout{width:100%;padding:.9rem;background:linear-gradient(135deg,#d4af37,#c49a20);color:#1a1a2e;font-family:Outfit,sans-serif;font-size:1rem;font-weight:700;border:none;border-radius:10px;cursor:pointer;transition:transform .2s,box-shadow .2s;letter-spacing:.03em}.btn-checkout:hover{transform:translateY(-1px);box-shadow:0 6px 20px #d4af3766}.btn-checkout:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-clear-cart{width:100%;margin-top:.5rem;padding:.6rem;background:none;border:1px solid rgba(231,76,60,.3);border-radius:8px;color:#e74c3c;font-size:.85rem;cursor:pointer;transition:background .2s}.btn-clear-cart:hover{background:#e74c3c14}.add-to-cart-btn{width:100%;margin-top:.5rem;padding:.5rem .75rem;background:linear-gradient(135deg,#d4af37,#b8960c);color:#1a1a2e;font-family:Outfit,sans-serif;font-size:.82rem;font-weight:700;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.4rem;transition:transform .15s,opacity .15s}.add-to-cart-btn:hover{transform:scale(1.02)}.add-to-cart-btn:active{transform:scale(.97)}.add-to-cart-btn.added{background:linear-gradient(135deg,#2ecc71,#27ae60);animation:btn-added .3s ease}@keyframes btn-added{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.favorite-btn{position:absolute;top:8px;right:8px;background:#1a1a2eb3;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s,background .2s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.favorite-btn:hover{transform:scale(1.15);background:#1a1a2ee6}.favorite-btn.active svg{color:#e74c3c;fill:#e74c3c}.favorite-btn svg{color:#aaa;width:16px;height:16px;transition:color .2s}@media(max-width:480px){.cart-drawer{width:100vw;border-radius:0}.cart-icon-btn{bottom:1.25rem;right:1.25rem;width:54px;height:54px}}.menu-container{max-width:1200px;margin:0 auto;padding:0 1rem 3rem;position:relative;z-index:1;box-sizing:border-box;min-height:80vh}.menu-sticky-wrapper{position:sticky;top:0;z-index:990;width:100%;background:#0b090af0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(229,56,59,.25);margin-bottom:1.5rem;border-radius:0;box-shadow:0 8px 30px #000000b3}.menu-sticky-content{max-width:1200px;margin:0 auto;padding:.25rem .5rem}.search-bar-sticky{padding-top:.5rem}.category-tabs-sticky{padding-bottom:.25rem}.category-group{scroll-margin-top:160px;margin-bottom:1rem}.category-title{display:flex;align-items:center;gap:.75rem;font-size:1.45rem;font-weight:var(--fw-bold);color:var(--color-white);margin:2rem 0 1.25rem;font-family:var(--font-serif);border-bottom:2px solid rgba(229,56,59,.3);padding-bottom:.6rem;letter-spacing:var(--ls-normal)}.category-title-badge{width:5px;height:1.2em;background:linear-gradient(135deg,var(--color-mahogany-red-500) 0%,var(--color-strawberry-red-500) 100%);border-radius:4px;box-shadow:0 0 8px #e5383b80;display:inline-block}.category-count{font-size:.95rem;font-weight:var(--fw-regular);color:var(--color-dust-grey-700);font-family:var(--font-roboto)}.products-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.25rem}.no-products-msg{padding:3rem 1rem;text-align:center;color:var(--color-dust-grey-800);font-size:1.1rem}.admin-controls{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2rem;margin-top:2rem;background:#161a1dcc;border-radius:16px;border:1px solid rgba(255,255,255,.1)}.boton-descargar{padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--color-dark-garnet-500) 0%,var(--color-strawberry-red-500) 100%);color:var(--color-white);border:none;border-radius:30px;font-weight:var(--fw-bold);cursor:pointer;box-shadow:0 4px 14px #e5383b66;transition:all .3s ease}.boton-descargar:hover{transform:translateY(-2px);box-shadow:0 6px 18px #e5383b99}@media(max-width:768px){.products-row{grid-template-columns:1fr}.category-title{font-size:1.25rem}.category-group{scroll-margin-top:220px}}@media print{body{-webkit-print-color-adjust:exact;zoom:.8;background:#fff!important;color:#000!important}.product-grid{display:block}.category-group{page-break-inside:avoid;break-inside:avoid;margin-bottom:2rem}.products-row{display:flex;flex-wrap:wrap;gap:.8rem}.product-card img{width:80px;height:60px}.product-card{width:23%;margin-bottom:1rem;page-break-inside:avoid;break-inside:avoid;font-size:.8rem;padding:.8rem;background:#fff!important;color:#000!important}.product-card .price{font-size:.8rem}.product-card .description{font-size:.7rem}.boton-descargar,.search-bar-sticky,.category-tabs-sticky,.menu-sticky-wrapper,.admin-controls,header,footer,.header-menu{display:none!important}.app-background{background:#fff!important}}.loader-container{position:fixed;top:0;left:0;width:100%;height:100vh;background-color:#000;display:flex;justify-content:center;align-items:center;z-index:9999;transition:opacity .5s ease-in-out,visibility .5s ease-in-out;opacity:1;visibility:visible}.loader-container.hiding{opacity:0;visibility:hidden}.logo-wrapper{position:relative;width:150px;height:150px;display:flex;justify-content:center;align-items:center}.puka-logo{width:100%;height:100%;border-radius:50%;position:relative;z-index:2;animation:logo-pulse 2s infinite ease-in-out}.logo-wrapper:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;border-radius:50%;background-color:#d61f26cc;filter:blur(25px);z-index:1;animation:halo-pulse 2s infinite ease-in-out}@keyframes logo-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes halo-pulse{0%{width:90%;height:90%;opacity:.5}50%{width:160%;height:160%;opacity:1}to{width:90%;height:90%;opacity:.5}}.login-wrapper{background:radial-gradient(circle at top,var(--color-dark-garnet-200) 0%,var(--color-onyx-500) 75%);min-height:100vh;display:flex;justify-content:center;align-items:center;padding:2rem 1rem;box-sizing:border-box}.login-form{background-color:var(--color-carbon-black-400);border:1px solid var(--color-carbon-black-600);color:var(--color-white-smoke);max-width:400px;width:100%;margin:0 auto;padding:2.5rem 2rem;border-radius:16px;display:flex;flex-direction:column;gap:1.25rem;box-shadow:0 20px 40px #00000080,0 0 25px #66070840;box-sizing:border-box}.login-logo{max-width:100px;height:auto;margin:0 auto .25rem;display:block;filter:drop-shadow(0 4px 12px rgba(0,0,0,.4))}.login-header-group{text-align:center;display:flex;flex-direction:column;gap:.35rem;margin-bottom:.5rem}.login-title{font-family:var(--font-serif);font-size:1.75rem;font-weight:700;color:var(--color-white-smoke);margin:0}.login-subtitle{font-family:var(--font-roboto);font-size:var(--fs-sm);font-weight:var(--fw-regular);color:var(--color-silver);margin:0}.login-field{display:flex;flex-direction:column;gap:.4rem}.login-field label{font-family:var(--font-roboto);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--color-dust-grey-700)}.login-input{font-family:var(--font-roboto);font-size:var(--fs-base);padding:.75rem 1rem;border:1px solid var(--color-carbon-black-600);border-radius:8px;background-color:var(--color-onyx-400);color:var(--color-white-smoke);width:100%;box-sizing:border-box;transition:border-color .2s ease,box-shadow .2s ease}.login-input::placeholder{color:var(--color-carbon-black-800)}.login-input:focus{outline:none;border-color:var(--color-strawberry-red);box-shadow:0 0 0 3px #e5383b40}.password-container{position:relative;width:100%}.password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:1.1rem;color:var(--color-dust-grey-400);display:flex;align-items:center;justify-content:center;padding:4px;border-radius:4px;transition:color .2s ease}.password-toggle:hover{color:var(--color-white-smoke)}.remember-row{display:flex;align-items:center;justify-content:space-between;margin-top:-.25rem}.remember-me{display:flex;align-items:center;gap:.5rem;font-size:var(--fs-sm);color:var(--color-dust-grey-700);font-weight:var(--fw-regular);cursor:pointer;-webkit-user-select:none;user-select:none}.remember-me input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-strawberry-red);cursor:pointer}.login-link{color:var(--color-strawberry-red-800);font-size:var(--fs-sm);font-weight:var(--fw-medium);text-decoration:none;transition:color .2s ease}.login-link:hover{color:var(--color-strawberry-red-600);text-decoration:underline}button[type=submit]{background:linear-gradient(135deg,var(--color-mahogany-red-500) 0%,var(--color-strawberry-red) 100%);color:var(--color-white);border:none;padding:.85rem 1rem;border-radius:8px;font-family:var(--font-roboto);font-size:var(--fs-base);font-weight:var(--fw-bold);letter-spacing:var(--ls-wide);cursor:pointer;width:100%;min-height:48px;margin-top:.5rem;transition:transform .15s ease,box-shadow .2s ease,opacity .2s ease;box-shadow:0 4px 14px #e5383b59;box-sizing:border-box}button[type=submit]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #e5383b73}button[type=submit]:active:not(:disabled){transform:translateY(0)}button[type=submit]:disabled{opacity:.65;cursor:not-allowed}.login-error{background:#66070899;border:1px solid var(--color-strawberry-red-400);color:var(--color-white-smoke);padding:.75rem 1rem;border-radius:8px;font-size:var(--fs-sm);text-align:center;line-height:1.4}.login-success{background:#28a74526;border:1px solid rgba(40,167,69,.4);color:#2ecc71;padding:.75rem 1rem;border-radius:8px;font-size:var(--fs-sm);text-align:center;line-height:1.4}.login-footer-text{text-align:center;margin-top:.5rem;font-size:var(--fs-sm);color:var(--color-silver)}@media(max-width:480px){.login-wrapper{padding:1.5rem 1rem}.login-form{padding:2rem 1.25rem;border-radius:12px}}._dashboard_1q25q_1{display:flex;min-height:100vh;background-color:var(--color-onyx-500, #0b090a);color:var(--color-white-smoke-500, #f5f3f4);font-family:var(--font-roboto, "Roboto", sans-serif)}._sidebar_1q25q_9{width:260px;background-color:var(--color-carbon-black-500, #161a1d);border-right:1px solid rgba(255,255,255,.07);display:flex;flex-direction:column;padding:1rem .5rem;gap:.5rem;height:100vh;position:sticky;top:0;overflow:hidden;box-sizing:border-box}._logo_1q25q_24{text-align:center;flex-shrink:0;padding:.5rem 0 1rem}._logo_1q25q_24 img{width:75px;height:75px;object-fit:contain;margin:0 auto;filter:drop-shadow(0 2px 8px rgba(0,0,0,.4))}._nav_1q25q_38{flex:1;overflow-y:auto;padding-right:4px}._nav_1q25q_38::-webkit-scrollbar{width:4px}._nav_1q25q_38::-webkit-scrollbar-track{background:transparent}._nav_1q25q_38::-webkit-scrollbar-thumb{background-color:#ffffff26;border-radius:4px}._nav_1q25q_38::-webkit-scrollbar-thumb:hover{background-color:#ffffff4d}._nav_1q25q_38 ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.35rem}._nav_1q25q_38 li{list-style:none}._nav_1q25q_38 a{display:flex;align-items:center;gap:.6rem;padding:.75rem 1rem;border-radius:8px;color:var(--color-dust-grey-500, #d3d3d3);text-decoration:none;font-size:.9rem;font-weight:500;text-align:left;transition:all .2s ease;border-left:3px solid transparent}._nav_1q25q_38 a:hover{background-color:#ffffff0d;color:var(--color-white, #ffffff)}._nav_1q25q_38 a._active_1q25q_95,._active_1q25q_95{background:linear-gradient(135deg,#a4161a4d,#66070873);color:var(--color-white, #ffffff);border-left:3px solid var(--color-mahogany-red-vibrant-500, #ba181b);font-weight:700;box-shadow:0 4px 12px #66070833}._main_1q25q_104{flex:1;display:flex;flex-direction:column;min-width:0}._header_1q25q_111{background:linear-gradient(90deg,#161a1d,#1f2428);border-bottom:1px solid rgba(255,255,255,.08);color:var(--color-white-smoke-500, #f5f3f4);padding:1rem 1.75rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 10px #0000004d}._userInfo_1q25q_122{display:flex;align-items:center;gap:.75rem}._userAvatar_1q25q_128{width:36px;height:36px;border-radius:50%;object-fit:cover}._content_1q25q_135{flex:1;padding:1.75rem;display:flex;flex-direction:column;background-color:var(--color-onyx-500, #0b090a);color:var(--color-white-smoke-500, #f5f3f4)}._mobileToggle_1q25q_145{display:none;background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#fff;font-size:1.2rem;cursor:pointer;padding:8px 12px;border-radius:6px;align-items:center;justify-content:center}._overlay_1q25q_159{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;z-index:900;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@media(max-width:768px){._dashboard_1q25q_1{flex-direction:column}._sidebar_1q25q_9{position:fixed;top:0;left:0;height:100vh;z-index:1000;transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:4px 0 20px #000c;width:280px}._sidebar_1q25q_9._open_1q25q_188{transform:translate(0)}._mobileToggle_1q25q_145{display:flex}._overlay_1q25q_159._open_1q25q_188{display:block}._main_1q25q_104{width:100%}._header_1q25q_111{padding:.85rem 1rem;gap:12px}._content_1q25q_135{padding:1rem .75rem}}.categorias-page{padding:1.25rem;color:var(--color-white-smoke-500, #f5f3f4);font-family:var(--font-roboto, "Roboto", sans-serif)}.controls-bar{background-color:var(--color-carbon-black-500, #161a1d);padding:1.25rem;border-radius:12px;margin-bottom:1.5rem;border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 16px #0003}.tabla-categorias{width:100%;border-collapse:collapse;font-size:.925rem}.tabla-categorias th,.tabla-categorias td{padding:.9rem 1.1rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.06)}.tabla-categorias th{background-color:#0006;color:var(--color-dust-grey-500, #d3d3d3);font-weight:700;text-transform:uppercase;font-size:.8rem;letter-spacing:.05em}.tabla-categorias tr:hover{background-color:#ffffff08}.modal-box{background-color:var(--color-carbon-black-500, #161a1d)!important;color:var(--color-white-smoke-500, #f5f3f4)!important;border:1px solid rgba(255,255,255,.12);border-radius:14px;box-shadow:0 10px 40px #0009}.modal-header h3{margin:0;color:var(--color-white, #ffffff);font-weight:700}.modal-close{background:none;border:none;color:var(--color-dust-grey-500, #d3d3d3);font-size:1.5rem;cursor:pointer;transition:color .2s}.modal-close:hover{color:#fff}.form-group input{width:100%;padding:10px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.15);background-color:var(--color-carbon-black-400, #121517)!important;color:var(--color-white-smoke-500, #f5f3f4)!important;font-size:.95rem;box-sizing:border-box}.form-group input:focus{outline:none;border-color:var(--color-strawberry-red-500, #e5383b)}.form-group input::placeholder{color:var(--color-dust-grey-700, #e5e5e5);opacity:.5}.form-group label{display:block;margin-bottom:6px;color:var(--color-dust-grey-500, #d3d3d3)!important;font-weight:500;font-size:.9rem}.visibility-container{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:20px;cursor:pointer}.pagination-controls button:hover:not(:disabled){background-color:#ffffff1a}@media(max-width:768px){.categorias-page{padding:.5rem}.controls-bar{display:flex;flex-direction:column;gap:10px}.filter-input,.filter-select{margin-top:5px}.table-container{overflow-x:auto;width:100%}.tabla-categorias{min-width:500px}.modal-box{width:95%;max-height:90vh}.visibility-container{flex-wrap:wrap}}.generic-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#000000bf;display:grid;place-items:center;z-index:9000}.generic-modal-box{background-color:#1e1e1e!important;color:#fff!important;border:1px solid #444;border-radius:8px;padding:2rem;width:100%;max-width:400px;text-align:center;font-family:Inter,sans-serif;box-shadow:0 4px 20px #00000080}.generic-modal-header{display:flex;justify-content:center;align-items:center;margin-bottom:1rem;position:relative}.generic-modal-header h3{margin:0;font-size:1.3rem;font-weight:600;color:#fff!important;text-align:center}.generic-modal-close{border:none;background:none;font-size:1.4rem;color:#aaa;cursor:pointer;transition:color .2s;position:absolute;right:0;top:50%;transform:translateY(-50%)}.generic-modal-close:hover{color:#fff}.generic-modal-body{margin:1.5rem 0;font-size:1rem;color:#ddd;line-height:1.5}.generic-modal-buttons{display:flex;justify-content:center;gap:1rem;margin-top:2rem}.btn-cancelar{padding:.6rem 1.4rem;background-color:#333;color:#fff;border:1px solid #555;border-radius:6px;cursor:pointer;transition:background .2s}.btn-cancelar:hover{background-color:#444}.btn-confirmar{padding:.6rem 1.4rem;background-color:#d12e2e;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:background .2s}.btn-confirmar:hover{background-color:#b02323}.icon-selector-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:10px;max-height:none;overflow-y:visible;padding:5px}.icon-option{display:flex;justify-content:center;align-items:center;width:40px;height:40px;background-color:#333;border-radius:6px;cursor:pointer;transition:all .2s;font-size:1.1rem;color:#ccc;border:1px solid transparent}.icon-option:hover{background-color:#444;color:#fff;transform:scale(1.05)}.icon-option.selected{background-color:#2a2a2a;border:2px solid #e63946;color:#e63946;box-shadow:0 0 8px #e639464d}.productos-page{padding:1.25rem;color:var(--color-white-smoke-500, #f5f3f4);font-family:var(--font-roboto, "Roboto", sans-serif)}.controls-bar{background-color:var(--color-carbon-black-500, #161a1d);padding:1.25rem;border-radius:12px;margin-bottom:1.5rem;border:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 16px #0003}.table-container{background-color:var(--color-carbon-black-500, #161a1d);border-radius:12px;overflow:visible;border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 16px #0003}.tabla-productos{width:100%;border-collapse:collapse;font-size:.925rem}.tabla-productos th,.tabla-productos td{padding:.9rem 1.1rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.06);vertical-align:middle}.tabla-productos th{background-color:#0006;color:var(--color-dust-grey-500, #d3d3d3);font-weight:700;text-transform:uppercase;font-size:.8rem;letter-spacing:.05em}.tabla-productos tr:hover{background-color:#ffffff08}.filter-input,.filter-select{width:100%;margin-top:5px;padding:8px 10px;border-radius:6px;border:1px solid rgba(255,255,255,.12);background-color:var(--color-carbon-black-400, #121517);color:var(--color-white-smoke-500, #f5f3f4);font-size:.85rem;font-family:inherit}.filter-input:focus,.filter-select:focus{outline:none;border-color:var(--color-mahogany-red-vibrant-500, #ba181b)}.btn-agregar{background:linear-gradient(135deg,var(--color-mahogany-red-vibrant-500, #ba181b) 0%,var(--color-dark-garnet-500, #660708) 100%);color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-weight:700;font-size:.9rem;transition:all .2s ease;box-shadow:0 4px 12px #6607084d}.btn-agregar:hover{background:linear-gradient(135deg,var(--color-strawberry-red-500, #e5383b) 0%,var(--color-mahogany-red-vibrant-500, #ba181b) 100%);transform:translateY(-1px)}.btn-editar,.btn-eliminar{padding:6px 14px;margin-right:6px;border:none;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:600;transition:all .2s ease}.btn-editar{background-color:#2ecc7126;color:#2ecc71;border:1px solid rgba(46,204,113,.3)}.btn-eliminar{background-color:#e5383b26;color:var(--color-strawberry-red-500, #e5383b);border:1px solid rgba(229,56,59,.3)}.btn-editar:hover{background-color:#2ecc7140}.btn-eliminar:hover{background-color:#e5383b40}.modal-box{background-color:var(--color-carbon-black-500, #161a1d)!important;color:var(--color-white-smoke-500, #f5f3f4)!important;border:1px solid rgba(255,255,255,.12);border-radius:14px;box-shadow:0 10px 40px #0009;max-width:520px;width:90%;max-height:85vh;display:flex;flex-direction:column}.modal-header,.modal-buttons{flex-shrink:0;padding:1rem 1.25rem}.modal-body{flex-grow:1;overflow-y:auto;overflow-x:hidden;padding:0 1.25rem}.modal-body::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-track{background:transparent}.modal-body::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}.modal-body::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.form-group{margin-bottom:.85rem}.form-group label{display:block;margin-bottom:6px;color:var(--color-dust-grey-500, #d3d3d3)!important;font-weight:500;font-size:.875rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:10px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.15);background-color:var(--color-carbon-black-400, #121517)!important;color:var(--color-white-smoke-500, #f5f3f4)!important;font-family:inherit;font-size:.95rem;box-sizing:border-box}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-strawberry-red-500, #e5383b)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-dust-grey-700, #e5e5e5);opacity:.5}.password-input-container{position:relative;width:100%}.password-toggle-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--color-dust-grey-500, #d3d3d3);display:flex;align-items:center;justify-content:center}.password-toggle-btn:hover{color:#fff}.visibility-container{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:15px;cursor:pointer}.visibility-container input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--color-strawberry-red-500, #e5383b)}.visibility-container span{color:var(--color-white-smoke-500, #f5f3f4);font-size:.95rem}.pagination-controls button{padding:6px 16px;background-color:var(--color-carbon-black-400, #121517);color:var(--color-white-smoke-500, #f5f3f4);border:1px solid rgba(255,255,255,.12);border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s}.pagination-controls button:disabled{opacity:.4;cursor:not-allowed}.form-col{flex:1}.product-thumb{width:44px;height:44px;object-fit:cover;border-radius:6px;background-color:var(--color-carbon-black-400, #121517);border:1px solid rgba(255,255,255,.1)}@media(max-width:768px){.productos-page{padding:.5rem}.controls-bar{flex-direction:column;align-items:stretch;gap:10px}.filter-input,.filter-select{margin-top:5px;font-size:16px}.form-group input,.form-group select,.form-group textarea{font-size:16px}.table-container{overflow-x:auto;width:100%;margin-top:10px}.tabla-productos{min-width:600px}.modal-box{width:95%;max-height:90vh}.form-row{flex-direction:column;gap:10px}.form-col{width:100%}}.image-selector-container{position:relative;width:100%}.image-selector-trigger{display:flex;align-items:center;justify-content:space-between;padding:10px;background-color:#333;border:1px solid #555;border-radius:4px;cursor:pointer;color:#fff;-webkit-user-select:none;user-select:none}.image-selector-preview-mini{width:24px;height:24px;object-fit:cover;border-radius:2px;margin-right:10px}.image-selector-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.arrow-icon{margin-left:10px;font-size:.8em;color:#aaa}.image-selector-dropdown{position:absolute;bottom:100%;top:auto;left:0;width:100%;background-color:#2a2a2a;border:1px solid #555;border-radius:4px 4px 0 0;z-index:1100;max-height:250px;display:flex;flex-direction:column-reverse;box-shadow:0 -4px 6px #0000004d;margin-bottom:4px}.image-selector-search{padding:2px;border-top:1px solid #444;border-bottom:none}.image-selector-search input{width:100%;padding:8px;background-color:#1a1a1a;border:1px solid #444;border-radius:4px;color:#fff;outline:none}.image-selector-search input:focus{border-color:#e63946}.image-selector-options{overflow-y:auto;flex:1}.image-selector-option{display:flex;align-items:center;padding:1px 2px;cursor:pointer;border-bottom:1px solid #333;transition:background-color .2s}.image-selector-option:last-child{border-bottom:none}.image-selector-option:hover,.image-selector-option.selected{background-color:#3e3e3e}.image-selector-option.selected{background-color:#4a4a4a;border-left:3px solid #e63946}.option-thumb{width:24px;height:24px;object-fit:cover;border-radius:4px;margin-right:10px;background-color:#000}.option-info{display:flex;flex-direction:column;overflow:hidden}.option-name{font-size:.85em;font-weight:500;color:#eee;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.image-selector-empty{padding:15px;text-align:center;color:#888;font-style:italic}.admin-section{padding:1.25rem;color:var(--color-white-smoke-500, #f5f3f4);font-family:var(--font-roboto, "Roboto", sans-serif)}h2{margin-bottom:1.5rem;text-align:center;font-weight:700;color:var(--color-white, #ffffff)}.upload-form-container{background-color:var(--color-carbon-black-500, #161a1d);padding:1.5rem;border-radius:12px;border:1px solid rgba(255,255,255,.08);margin-bottom:2rem;max-width:800px;margin-left:auto;margin-right:auto;box-shadow:0 4px 16px #0003}.upload-form{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.input-nombre{flex:1;padding:10px 12px;background-color:var(--color-carbon-black-400, #121517);border:1px solid rgba(255,255,255,.15);color:var(--color-white-smoke-500, #f5f3f4);border-radius:8px;font-family:inherit;font-size:.95rem}.input-nombre:focus{outline:none;border-color:var(--color-strawberry-red-500, #e5383b)}.file-input-wrapper{display:flex;align-items:center;gap:10px}.btn-select-file{background-color:#ffffff14;color:var(--color-white-smoke-500, #f5f3f4);border:1px solid rgba(255,255,255,.12);padding:10px 16px;border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:.9rem;font-weight:500}.btn-select-file:hover{background-color:#ffffff26}.file-name{color:var(--color-dust-grey-500, #d3d3d3);font-style:italic;font-size:.85rem;max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-subir{background:linear-gradient(135deg,var(--color-mahogany-red-vibrant-500, #ba181b) 0%,var(--color-dark-garnet-500, #660708) 100%);color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-weight:700;font-size:.9rem;transition:all .2s ease;box-shadow:0 4px 12px #6607084d}.btn-subir:hover:not(:disabled){background:linear-gradient(135deg,var(--color-strawberry-red-500, #e5383b) 0%,var(--color-mahogany-red-vibrant-500, #ba181b) 100%)}.btn-subir:disabled{opacity:.4;cursor:not-allowed}.table-container{overflow-x:auto;border-radius:12px;border:1px solid rgba(255,255,255,.08);background-color:var(--color-carbon-black-500, #161a1d);box-shadow:0 4px 16px #0003}.tabla-imagenes{width:100%;border-collapse:collapse;color:var(--color-white-smoke-500, #f5f3f4);font-size:.925rem}.tabla-imagenes th,.tabla-imagenes td{padding:.9rem 1.1rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.06)}.tabla-imagenes th{background-color:#0006;font-weight:700;color:var(--color-dust-grey-500, #d3d3d3);text-transform:uppercase;font-size:.8rem;letter-spacing:.05em}.tabla-imagenes tr:hover{background-color:#ffffff08}.img-thumbnail-wrapper{width:80px;height:60px;display:flex;justify-content:center;align-items:center;background:#000;border-radius:6px;overflow:hidden;margin:0 auto;border:1px solid rgba(255,255,255,.1)}.img-thumbnail{max-width:100%;max-height:100%;object-fit:contain}.text-nombre{display:block;font-weight:500;font-size:.95rem}.text-url-mini{display:inline-block;font-size:.75rem;color:var(--color-dust-grey-500, #d3d3d3);margin-top:4px;cursor:pointer;border:1px dashed rgba(255,255,255,.2);padding:2px 6px;border-radius:4px}.text-url-mini:hover{color:#fff;border-color:#fff6}.actions-cell{display:flex;justify-content:center;gap:8px}.btn-ver,.btn-eliminar-tabla{width:36px;height:36px;border-radius:6px;border:none;cursor:pointer;display:flex;justify-content:center;align-items:center;transition:all .2s ease;text-decoration:none}.btn-ver{background-color:#ffffff14;color:var(--color-white-smoke-500, #f5f3f4);border:1px solid rgba(255,255,255,.12)}.btn-ver:hover{background-color:#ffffff2e}.btn-eliminar-tabla{background-color:#e5383b26;color:var(--color-strawberry-red-500, #e5383b);border:1px solid rgba(229,56,59,.3)}.btn-eliminar-tabla:hover{background-color:#e5383b40}.empty-state{text-align:center;padding:40px;color:var(--color-dust-grey-500, #d3d3d3);font-size:1rem;background-color:var(--color-carbon-black-500, #161a1d);border-radius:12px;border:1px dashed rgba(255,255,255,.12)}@media(max-width:768px){.admin-section{padding:.5rem}.upload-form-container{padding:1rem}.upload-form{flex-direction:column;align-items:stretch}.input-nombre,.btn-select-file,.btn-subir{width:100%;font-size:16px}.file-input-wrapper{flex-direction:column;width:100%;align-items:stretch}.file-name{max-width:100%;text-align:center;margin-top:5px}.table-container{overflow-x:auto;width:100%}.tabla-imagenes{min-width:600px}}.menu-builder-page{padding:1.25rem;color:var(--color-white-smoke-500, #f5f3f4);font-family:var(--font-roboto, "Roboto", sans-serif);width:100%;max-width:1600px;margin:0 auto;box-sizing:border-box}.builder-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:.5rem 0}.builder-header h2{font-size:1.5rem;font-weight:700;margin:0;color:var(--color-white, #ffffff)}.btn-save{background:linear-gradient(135deg,var(--color-mahogany-red-vibrant-500, #ba181b) 0%,var(--color-dark-garnet-500, #660708) 100%);color:#fff;border:none;padding:10px 22px;border-radius:8px;cursor:pointer;font-weight:700;font-size:.9rem;transition:all .2s ease;box-shadow:0 4px 12px #6607084d}.btn-save:hover{background:linear-gradient(135deg,var(--color-strawberry-red-500, #e5383b) 0%,var(--color-mahogany-red-vibrant-500, #ba181b) 100%);transform:translateY(-1px)}.notification{padding:12px 16px;border-radius:8px;margin-bottom:1.25rem;text-align:center;font-weight:500;font-size:.95rem}.notification.success{background:#2ecc7126;color:#2ecc71;border:1px solid rgba(46,204,113,.3)}.notification.error{background:#e5383b26;color:var(--color-strawberry-red-500, #e5383b);border:1px solid rgba(229,56,59,.3)}.builder-content{display:flex;flex-direction:column;gap:1.25rem}.builder-category-container{width:100%;background:var(--color-carbon-black-500, #161a1d);border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 16px #0003}.builder-category-header{background:linear-gradient(135deg,var(--color-dark-garnet-500, #660708) 0%,var(--color-mahogany-red-vibrant-500, #ba181b) 100%);padding:.9rem 1.25rem;display:flex;align-items:center;gap:1rem;cursor:grab;font-size:1.05rem;font-weight:700;color:#fff;-webkit-user-select:none;user-select:none}.category-header-content{flex:1;display:flex;justify-content:space-between;align-items:center;cursor:pointer}.collapse-icon{font-size:.85rem;color:#fffc}.builder-product-list-container{padding:.75rem;background:var(--color-carbon-black-400, #121517);border-top:1px solid rgba(255,255,255,.06)}.builder-product-item{display:flex;justify-content:space-between;align-items:center;background:var(--color-carbon-black-500, #161a1d);color:var(--color-white-smoke-500, #f5f3f4);margin:.5rem 0;padding:.85rem 1.1rem;border-radius:8px;cursor:grab;-webkit-user-select:none;user-select:none;border:1px solid rgba(255,255,255,.08);transition:all .2s ease}.builder-product-item:hover{background:#ffffff0d;border-color:#ffffff26}.product-name{font-weight:500;font-size:.95rem}.product-price{font-weight:700;color:var(--color-strawberry-red-500, #e5383b)}.drag-indicator{cursor:grab;opacity:.6;margin-right:12px;font-size:1.25rem;color:var(--color-dust-grey-500, #d3d3d3);touch-action:none;padding:6px}.product-info{display:flex;align-items:center}.drag-overlay-item{background:var(--color-mahogany-red-vibrant-500, #ba181b);padding:1rem 1.25rem;color:#fff;border-radius:10px;box-shadow:0 10px 25px #0009;font-weight:700}.promotions-container{padding:1.25rem;color:var(--color-white-smoke-500, #f5f3f4);font-family:var(--font-roboto, "Roboto", sans-serif)}.promotions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.promotions-header h2{font-size:1.5rem;font-weight:700;margin:0;color:var(--color-white, #ffffff)}.btn-new-promo{background:linear-gradient(135deg,var(--color-mahogany-red-vibrant-500, #ba181b) 0%,var(--color-dark-garnet-500, #660708) 100%);color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:8px;font-weight:700;font-size:.9rem;transition:all .2s ease;box-shadow:0 4px 12px #6607084d}.btn-new-promo:hover{background:linear-gradient(135deg,var(--color-strawberry-red-500, #e5383b) 0%,var(--color-mahogany-red-vibrant-500, #ba181b) 100%);transform:translateY(-1px)}.promo-form-card{background-color:var(--color-carbon-black-500, #161a1d);padding:1.5rem;border-radius:12px;margin-bottom:2rem;border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 16px #0003}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--color-dust-grey-500, #d3d3d3);font-weight:500;font-size:.875rem}.form-input,.form-select{width:100%;padding:10px 12px;background-color:var(--color-carbon-black-400, #121517);border:1px solid rgba(255,255,255,.15);border-radius:8px;color:var(--color-white-smoke-500, #f5f3f4);font-size:.95rem;font-family:inherit;box-sizing:border-box}.form-input:focus,.form-select:focus{outline:none;border-color:var(--color-strawberry-red-500, #e5383b)}.form-row{display:flex;gap:15px}.form-row .form-group{flex:1}.weekdays-selector{display:flex;gap:8px;flex-wrap:wrap}.day-checkbox{display:flex;align-items:center;gap:6px;background-color:var(--color-carbon-black-400, #121517);padding:8px 14px;border-radius:20px;border:1px solid rgba(255,255,255,.12);cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease;font-size:.85rem;color:var(--color-dust-grey-500, #d3d3d3)}.day-checkbox.selected{background-color:var(--color-mahogany-red-vibrant-500, #ba181b);border-color:var(--color-strawberry-red-500, #e5383b);color:#fff;font-weight:600}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:1.5rem}.btn-cancel{background:transparent;border:1px solid rgba(255,255,255,.15);color:var(--color-dust-grey-500, #d3d3d3);padding:10px 20px;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s ease}.btn-cancel:hover{background-color:#ffffff14;color:#fff}.btn-save{background:linear-gradient(135deg,var(--color-mahogany-red-vibrant-500, #ba181b) 0%,var(--color-dark-garnet-500, #660708) 100%);color:#fff;border:none;padding:10px 24px;border-radius:8px;cursor:pointer;font-weight:700;box-shadow:0 4px 12px #6607084d}.btn-save:disabled{opacity:.4;cursor:not-allowed}.promotions-table-container{overflow-x:auto;border-radius:12px;border:1px solid rgba(255,255,255,.08);background-color:var(--color-carbon-black-500, #161a1d)}.promotions-table{width:100%;border-collapse:collapse;background-color:var(--color-carbon-black-500, #161a1d);font-size:.925rem}.promotions-table th,.promotions-table td{padding:.9rem 1.1rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.06);color:var(--color-white-smoke-500, #f5f3f4)}.promotions-table th{background-color:#0006;font-weight:700;text-transform:uppercase;font-size:.8rem;letter-spacing:.05em;color:var(--color-dust-grey-500, #d3d3d3)}.status-badge{padding:4px 10px;border-radius:12px;font-size:.78rem;font-weight:700;display:inline-block}.status-active{background-color:#2ecc7126;color:#2ecc71;border:1px solid rgba(46,204,113,.3)}.status-inactive{background-color:#e5383b26;color:var(--color-strawberry-red-500, #e5383b);border:1px solid rgba(229,56,59,.3)}.promo-image-thumb{width:60px;height:40px;object-fit:cover;border-radius:6px;border:1px solid rgba(255,255,255,.1)}.switch{position:relative;display:inline-block;width:46px;height:24px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ffffff26;transition:.3s;border-radius:24px}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}input:checked+.slider{background-color:#2ecc71}input:checked+.slider:before{transform:translate(22px)}.carousel-admin-page{display:flex;flex-direction:column;gap:1.5rem;padding:1rem 0;color:var(--color-white-smoke-500, #f5f3f4);font-family:var(--font-roboto, sans-serif);max-width:100%;box-sizing:border-box;overflow-x:hidden}.carousel-admin-page h2{font-size:1.875rem;font-weight:700;color:var(--color-white-smoke-500, #f5f3f4);margin:0}.carousel-notice-card{display:flex;align-items:flex-start;gap:1rem;background:var(--color-onyx-500, #0b090a);border:1px solid rgba(229,56,59,.25);border-left:4px solid var(--color-strawberry-red-500, #e5383b);border-radius:12px;padding:1.25rem 1.5rem;box-shadow:0 4px 16px #00000040;max-width:100%;box-sizing:border-box}.carousel-notice-icon{color:var(--color-strawberry-red-500, #e5383b);flex-shrink:0;margin-top:2px}.carousel-notice-content h4{font-size:1rem;font-weight:700;color:var(--color-white-smoke-500, #f5f3f4);margin:0 0 .5rem}.carousel-notice-content ul{margin:0;padding-left:1.2rem;display:flex;flex-direction:column;gap:.35rem}.carousel-notice-content li{font-size:.875rem;font-weight:400;color:var(--color-dust-grey-500, #d3d3d3);line-height:1.4}.carousel-notice-content strong{color:var(--color-white-500, #ffffff);font-weight:500}.carousel-controls-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;max-width:100%;box-sizing:border-box}.carousel-btn-add{display:inline-flex;align-items:center;gap:.5rem;background:var(--color-mahogany-red-vibrant-500, #ba181b);color:#fff;border:none;padding:.65rem 1.25rem;border-radius:8px;font-size:.95rem;font-weight:600;font-family:var(--font-roboto, sans-serif);cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #ba181b4d}.carousel-btn-add:hover{background:var(--color-mahogany-red-vibrant-600, #e32a2d);transform:translateY(-1px)}.carousel-counter{font-size:.9rem;color:var(--color-dust-grey-500, #d3d3d3);font-weight:500}.carousel-img-thumb{width:90px;height:60px;object-fit:cover;border-radius:6px;border:1px solid rgba(255,255,255,.1);background:var(--color-onyx-500, #0b090a)}.carousel-actions-cell{display:flex;gap:6px;align-items:center}.carousel-btn-action{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:6px;border:none;cursor:pointer;color:#fff;transition:opacity .2s ease,transform .1s ease}.carousel-btn-action:hover{opacity:.88;transform:scale(1.04)}.carousel-btn-action.edit{background-color:#28a745}.carousel-btn-action.toggle-active{background-color:#17a2b8}.carousel-btn-action.toggle-inactive{background-color:#6c757d}.carousel-btn-action.delete{background-color:var(--color-mahogany-red-vibrant-500, #ba181b)}.carousel-btn-action.order-up,.carousel-btn-action.order-down{background-color:var(--color-carbon-black-600, #3d4951)}.carousel-btn-action:disabled{opacity:.35;cursor:not-allowed;transform:none}.carousel-badge{display:inline-block;padding:.25rem .6rem;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.carousel-badge.active{background:#2ecc7126;color:#2ecc71;border:1px solid rgba(46,204,113,.3)}.carousel-badge.inactive{background:#95a5a626;color:#95a5a6;border:1px solid rgba(149,165,166,.3)}.carousel-upload-preview{margin-top:.5rem;position:relative;width:100%;max-height:160px;overflow:hidden;border-radius:8px;border:1px dashed rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;background:var(--color-onyx-500, #0b090a);box-sizing:border-box}.carousel-upload-preview img{max-width:100%;max-height:150px;object-fit:contain}.carousel-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#0b090ad1;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;justify-content:center;align-items:center;z-index:10000;padding:1.25rem!important;box-sizing:border-box!important;overflow-x:hidden!important;overflow-y:auto!important;touch-action:pan-y!important;overscroll-behavior-x:none!important}.carousel-modal-box{background-color:var(--color-carbon-black-500, #161a1d)!important;color:var(--color-white-smoke-500, #f5f3f4)!important;border:1px solid rgba(255,255,255,.12);border-radius:16px;box-shadow:0 16px 48px #000c;width:100%!important;max-width:480px!important;max-height:88vh;display:flex;flex-direction:column;box-sizing:border-box!important;margin:0 auto!important;padding:1.5rem!important;overflow-x:hidden!important;touch-action:pan-y!important;overscroll-behavior-x:none!important}.carousel-modal-box *,.carousel-modal-box input,.carousel-modal-box textarea,.carousel-modal-box select,.carousel-modal-box form{max-width:100%!important;box-sizing:border-box!important;word-break:break-word}.carousel-modal-buttons{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;gap:12px!important;margin-top:1.25rem!important;padding:0!important;width:100%!important;box-sizing:border-box!important}.carousel-btn-cancelar,.carousel-btn-confirmar{flex:1 1 50%!important;width:50%!important;height:44px!important;min-height:44px!important;border-radius:8px!important;font-size:.95rem!important;font-weight:600!important;font-family:var(--font-roboto, sans-serif)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important;padding:0 1rem!important;box-sizing:border-box!important;cursor:pointer!important;transition:all .2s ease!important;margin:0!important}.carousel-btn-cancelar{background:var(--color-carbon-black-400, #121517)!important;color:var(--color-dust-grey-500, #d3d3d3)!important;border:1px solid rgba(255,255,255,.18)!important}.carousel-btn-cancelar:hover{background:var(--color-carbon-black-600, #3d4951)!important;color:#fff!important;border-color:#ffffff4d!important}.carousel-btn-confirmar{background:var(--color-mahogany-red-vibrant-500, #ba181b)!important;color:#fff!important;border:none!important;box-shadow:0 4px 12px #ba181b4d!important}.carousel-btn-confirmar:hover{background:var(--color-mahogany-red-vibrant-600, #e32a2d)!important}@media(max-width:576px){.carousel-modal-overlay{padding:1rem!important;align-items:center}.carousel-modal-box{width:100%!important;max-width:calc(100vw - 2rem)!important;border-radius:14px;padding:1.1rem!important;margin:0 auto!important}.carousel-notice-card{flex-direction:column;padding:1rem}.carousel-btn-add{width:100%;justify-content:center}}.checkout-page{min-height:100vh;background:#0d0d1a;font-family:Outfit,sans-serif;color:#f0f0f0;padding-bottom:4rem}.checkout-header{background:linear-gradient(135deg,#0d0d1a,#1a1a2e);border-bottom:1px solid rgba(212,175,55,.2);padding:1.25rem 2rem;display:flex;align-items:center;gap:1rem}.checkout-header-logo{height:40px}.checkout-header h1{font-size:1.3rem;color:#d4af37;margin:0}.checkout-back-btn{background:none;border:none;color:#aaa;cursor:pointer;display:flex;align-items:center;gap:.4rem;font-size:.9rem;transition:color .2s;padding:0;margin-left:auto}.checkout-back-btn:hover{color:#fff}.checkout-stepper{display:flex;align-items:center;justify-content:center;gap:0;padding:2rem 1rem 1.5rem;max-width:600px;margin:0 auto}.stepper-step{display:flex;flex-direction:column;align-items:center;gap:.4rem;flex:1;position:relative}.stepper-step:not(:last-child):after{content:"";position:absolute;top:18px;left:50%;width:100%;height:2px;background:#ffffff1a;z-index:0}.stepper-step.completed:not(:last-child):after{background:#d4af37}.stepper-circle{width:36px;height:36px;border-radius:50%;border:2px solid rgba(255,255,255,.2);background:#1a1a2e;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;color:#666;position:relative;z-index:1;transition:all .3s}.stepper-step.active .stepper-circle{border-color:#d4af37;background:#d4af3726;color:#d4af37;box-shadow:0 0 14px #d4af374d}.stepper-step.completed .stepper-circle{border-color:#d4af37;background:#d4af37;color:#1a1a2e}.stepper-label{font-size:.72rem;color:#666;text-align:center;transition:color .3s}.stepper-step.active .stepper-label,.stepper-step.completed .stepper-label{color:#d4af37}.checkout-body{max-width:900px;margin:0 auto;padding:0 1.5rem;display:grid;grid-template-columns:1fr 340px;gap:2rem;align-items:start}@media(max-width:768px){.checkout-body{grid-template-columns:1fr}}.checkout-panel{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:1.75rem}.checkout-panel h2{font-size:1.1rem;color:#d4af37;margin:0 0 1.25rem;padding-bottom:.75rem;border-bottom:1px solid rgba(212,175,55,.2);display:flex;align-items:center;gap:.5rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.82rem;color:#aaa;margin-bottom:6px;font-weight:500}.form-group label.required:after{content:" *";color:#e74c3c}.form-input{width:100%;padding:.7rem 1rem;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:#f0f0f0;font-size:.9rem;font-family:Outfit,sans-serif;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.form-input:focus{outline:none;border-color:#d4af37;box-shadow:0 0 0 3px #d4af371f}.form-input::placeholder{color:#555}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:480px){.form-row{grid-template-columns:1fr}}.order-type-selector{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.25rem}.order-type-card{border:2px solid rgba(255,255,255,.1);border-radius:10px;padding:1rem;cursor:pointer;text-align:center;transition:all .2s;background:#ffffff08}.order-type-card:hover{border-color:#d4af3766}.order-type-card.selected{border-color:#d4af37;background:#d4af3714}.order-type-card .icon{font-size:1.8rem;margin-bottom:.4rem}.order-type-card p{margin:0;font-size:.85rem;font-weight:600;color:#f0f0f0}.order-type-card small{color:#888;font-size:.75rem}.payment-methods{display:flex;flex-direction:column;gap:.75rem}.payment-method-card{border:2px solid rgba(255,255,255,.08);border-radius:12px;padding:1rem 1.25rem;cursor:pointer;display:flex;align-items:center;gap:1rem;transition:all .2s;background:#ffffff08}.payment-method-card:hover{border-color:#d4af374d}.payment-method-card.selected{border-color:#d4af37;background:#d4af3712}.payment-method-icon{width:40px;height:40px;border-radius:8px;background:#ffffff0f;display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0}.payment-method-info p{margin:0;font-size:.9rem;font-weight:600;color:#f0f0f0}.payment-method-info small{color:#888;font-size:.78rem}.payment-radio{margin-left:auto;width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color .2s}.payment-method-card.selected .payment-radio{border-color:#d4af37;background:#d4af37}.payment-method-card.selected .payment-radio:after{content:"";width:8px;height:8px;border-radius:50%;background:#1a1a2e}.transfer-details{background:#d4af370f;border:1px solid rgba(212,175,55,.2);border-radius:10px;padding:1rem 1.25rem;margin-top:.75rem}.transfer-details p{margin:0 0 6px;font-size:.85rem;color:#ccc}.transfer-details p:last-child{margin-bottom:0}.transfer-details strong{color:#d4af37}.order-summary-panel{position:sticky;top:1.5rem}.order-summary-items{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1rem;max-height:280px;overflow-y:auto;padding-right:4px}.order-summary-item{display:flex;align-items:center;gap:.75rem;font-size:.85rem}.order-summary-item img{width:44px;height:44px;border-radius:6px;object-fit:cover;background:#0d0d1a}.order-summary-item-name{flex:1;color:#ddd;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.order-summary-item-qty{color:#888;font-size:.8rem}.order-summary-item-price{font-weight:600;color:#f0f0f0;white-space:nowrap}.order-summary-divider{height:1px;background:#ffffff14;margin:.75rem 0}.order-summary-total-row{display:flex;justify-content:space-between;font-size:.85rem;color:#aaa;margin-bottom:4px}.order-summary-total-row.main{font-size:1rem;font-weight:700;color:#f0f0f0;margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.1)}.order-summary-total-row.main span:last-child{color:#d4af37}.checkout-nav{display:flex;gap:1rem;margin-top:1.5rem;justify-content:flex-end}.btn-prev{padding:.75rem 1.5rem;background:none;border:1px solid rgba(255,255,255,.15);border-radius:10px;color:#aaa;cursor:pointer;font-family:Outfit,sans-serif;font-size:.95rem;transition:all .2s}.btn-prev:hover{border-color:#ffffff4d;color:#fff}.btn-next{padding:.75rem 2rem;background:linear-gradient(135deg,#d4af37,#c49a20);border:none;border-radius:10px;color:#1a1a2e;font-family:Outfit,sans-serif;font-size:.95rem;font-weight:700;cursor:pointer;transition:transform .2s,box-shadow .2s}.btn-next:hover{transform:translateY(-1px);box-shadow:0 4px 16px #d4af3759}.btn-next:disabled{opacity:.5;cursor:not-allowed;transform:none}.checkout-auth-prompt{background:#d4af370f;border:1px solid rgba(212,175,55,.2);border-radius:12px;padding:1.25rem;margin-bottom:1.25rem;text-align:center}.checkout-auth-prompt p{margin:0 0 .75rem;font-size:.9rem;color:#ccc}.checkout-auth-btns{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.btn-auth-option{padding:.55rem 1.25rem;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-auth-option.primary{background:#d4af37;border:none;color:#1a1a2e}.btn-auth-option.secondary{background:none;border:1px solid rgba(255,255,255,.2);color:#ccc}.btn-auth-option:hover{transform:scale(1.02)}.guest-banner{background:#ffffff0a;border:1px dashed rgba(255,255,255,.15);border-radius:8px;padding:.65rem 1rem;font-size:.82rem;color:#888;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.confirmation-page{min-height:100vh;background:#0d0d1a;font-family:Outfit,sans-serif;display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.confirmation-container{max-width:600px;width:100%;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:20px;overflow:hidden}.confirmation-header{background:linear-gradient(135deg,#0d3b2e,#1a5c45);padding:2.5rem 2rem;text-align:center}.confirmation-check-circle{width:80px;height:80px;background:#2ecc7126;border:2px solid rgba(46,204,113,.4);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:#2ecc71;animation:popIn .5s cubic-bezier(.34,1.56,.64,1)}@keyframes popIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.confirmation-header h1{font-size:1.7rem;color:#fff;margin:0 0 .5rem}.confirmation-order-number{color:#ffffffb3;font-size:1rem;margin:0}.confirmation-order-number strong{color:#d4af37;font-size:1.15rem}.confirmation-status-card{display:flex;align-items:center;gap:1rem;padding:1.25rem 2rem;border-left:4px solid;background:#ffffff08;margin:1.25rem;border-radius:10px}.status-label{font-size:.78rem;color:#888;margin:0 0 2px}.status-value{font-size:.95rem;font-weight:700;margin:0}.confirmation-details{padding:0 2rem;display:flex;flex-direction:column;gap:.6rem;margin-bottom:1rem}.confirmation-detail-row{display:flex;justify-content:space-between;align-items:center;font-size:.88rem;color:#ccc}.confirmation-detail-row strong{color:#f0f0f0}.confirmation-items{margin:0 1.25rem 1rem;background:#ffffff08;border-radius:12px;overflow:hidden}.confirmation-items h3{font-size:.88rem;color:#d4af37;margin:0;padding:.9rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.07)}.confirmation-item-row{display:flex;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.85rem;border-bottom:1px solid rgba(255,255,255,.05);color:#ddd}.confirmation-item-row .qty{color:#888;margin-left:auto}.confirmation-item-row .price{min-width:80px;text-align:right;font-weight:600;color:#f0f0f0}.confirmation-totals{padding:.75rem 1.25rem;border-top:1px solid rgba(255,255,255,.08)}.confirmation-total-row{display:flex;justify-content:space-between;font-size:.83rem;color:#aaa;margin-bottom:4px}.confirmation-total-row.main{font-size:1rem;font-weight:700;color:#f0f0f0;margin-top:6px;padding-top:6px;border-top:1px solid rgba(255,255,255,.1)}.confirmation-total-row.main span:last-child{color:#d4af37}.confirmation-transfer-reminder{margin:0 1.25rem 1rem;background:#d4af370f;border:1px solid rgba(212,175,55,.2);border-radius:10px;padding:1rem 1.25rem;color:#ccc;font-size:.88rem}.confirmation-actions{display:flex;gap:.75rem;padding:1.25rem 2rem;border-top:1px solid rgba(255,255,255,.07);flex-wrap:wrap}.btn-confirmation-primary{flex:1;padding:.8rem 1.25rem;background:linear-gradient(135deg,#d4af37,#c49a20);border:none;border-radius:10px;color:#1a1a2e;font-family:Outfit,sans-serif;font-size:.9rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:transform .2s}.btn-confirmation-primary:hover{transform:translateY(-1px)}.btn-confirmation-secondary{flex:1;padding:.8rem 1.25rem;background:none;border:1px solid rgba(255,255,255,.15);border-radius:10px;color:#ccc;font-family:Outfit,sans-serif;font-size:.9rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.4rem;transition:all .2s}.btn-confirmation-secondary:hover{border-color:#ffffff4d;color:#fff}@media(max-width:480px){.confirmation-header{padding:2rem 1.25rem}.confirmation-actions{padding:1rem 1.25rem}.confirmation-details{padding:0 1.25rem}}*,*:before,*:after{box-sizing:border-box}.dashboard-page{min-height:100vh;width:100%;max-width:100vw;background:var(--color-onyx-500, #0b090a);font-family:var(--font-roboto, "Roboto", sans-serif);color:var(--color-dust-grey-800, #eeeeee);display:flex;overflow-x:hidden}.dashboard-mobile-header{display:none}.dashboard-sidebar{width:270px;background:var(--color-carbon-black-500, #161a1d);border-right:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;padding:1.5rem 1rem;flex-shrink:0;position:sticky;top:0;height:100vh;overflow-y:auto;overflow-x:hidden;box-sizing:border-box}.dashboard-sidebar-logo{display:flex;align-items:center;justify-content:center;padding-bottom:1.25rem;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:1.25rem;text-decoration:none;width:100%;transition:transform .25s ease,opacity .2s ease}.dashboard-sidebar-logo:hover{opacity:.95;transform:scale(1.04)}.dashboard-sidebar-logo img{height:68px;width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 4px 14px rgba(229,56,59,.4))}.dashboard-user-info{display:flex;align-items:center;gap:.85rem;padding-bottom:1.25rem;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:1.25rem;overflow:hidden}.dashboard-user-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--color-strawberry-red-500, #e5383b),var(--color-dark-garnet-500, #660708));display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.15rem;flex-shrink:0;box-shadow:0 3px 10px #e5383b4d}.dashboard-user-details{min-width:0;flex:1;overflow:hidden}.dashboard-user-name{font-size:.95rem;color:var(--color-white, #ffffff);margin:0 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-user-email{font-size:.78rem;color:var(--color-silver-500, #b1a7a6);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-nav{flex:1;display:flex;flex-direction:column;gap:.35rem}.dashboard-nav-item{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;border-radius:10px;cursor:pointer;transition:all .2s ease;border:1px solid transparent;background:none;color:var(--color-silver-500, #b1a7a6);font-size:.92rem;text-decoration:none;min-height:44px}.dashboard-nav-item:hover{background:#ffffff0d;color:var(--color-white, #ffffff)}.dashboard-nav-item.active{background:#e5383b1f;border-color:#e5383b59;color:var(--color-strawberry-red-600, #ea6062)}.dashboard-nav-item svg{flex-shrink:0}.dashboard-sidebar-footer{padding-top:1rem;border-top:1px solid rgba(255,255,255,.08);margin-top:auto;display:flex;flex-direction:column;gap:.6rem}.dashboard-menu-link-btn{width:100%;padding:.7rem 1rem;background:linear-gradient(135deg,var(--color-mahogany-red-500, #ba181b),var(--color-dark-garnet-500, #660708));border:none;border-radius:8px;color:#fff;font-size:.88rem;text-decoration:none;display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;transition:transform .2s ease,opacity .2s ease}.dashboard-menu-link-btn:hover{opacity:.95;transform:translateY(-1px)}.dashboard-logout-btn{width:100%;padding:.65rem 1rem;background:#ffffff08;border:1px solid rgba(239,29,32,.3);border-radius:8px;color:var(--color-strawberry-red-600, #ea6062);font-size:.85rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;justify-content:center;min-height:44px;transition:background .2s ease,border-color .2s ease}.dashboard-logout-btn:hover{background:#ef1d201a;border-color:#ef1d2080}.dashboard-main{flex:1;padding:2.25rem 2.5rem;overflow-y:auto;min-width:0;width:100%}.dashboard-page-title{font-size:1.6rem;color:var(--color-white, #ffffff);margin:0 0 1.75rem;display:flex;align-items:center;gap:.65rem;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:.85rem}.dashboard-page-title svg{color:var(--color-strawberry-red-500, #e5383b)}.dashboard-loading{color:var(--color-silver-500, #b1a7a6);padding:2rem}.dashboard-empty-state{text-align:center;padding:4rem 1.5rem;background:var(--color-carbon-black-500, #161a1d);border:1px solid rgba(255,255,255,.08);border-radius:16px;max-width:520px;margin:1rem auto}.dashboard-empty-state .empty-icon{color:var(--color-strawberry-red-500, #e5383b);margin-bottom:1rem;opacity:.85}.dashboard-empty-state .empty-title{font-size:1.1rem;color:var(--color-white, #ffffff);margin:0 0 .5rem}.dashboard-empty-state .empty-subtitle{font-size:.9rem;color:var(--color-silver-500, #b1a7a6);margin:0 0 1.5rem}.btn-empty-action{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.75rem;background:linear-gradient(135deg,var(--color-mahogany-red-500, #ba181b),var(--color-dark-garnet-500, #660708));color:#fff;border-radius:10px;text-decoration:none;min-height:44px;transition:transform .2s ease}.btn-empty-action:hover{transform:translateY(-2px)}.dashboard-card{background:var(--color-carbon-black-500, #161a1d);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:1.75rem;margin-bottom:1.5rem}.dashboard-card-title{font-size:1.05rem;color:var(--color-white, #ffffff);margin:0 0 1.25rem;padding-bottom:.65rem;border-bottom:1px solid rgba(229,56,59,.25)}.orders-list{display:flex;flex-direction:column;gap:1rem}.order-card{background:var(--color-carbon-black-500, #161a1d);border:1px solid rgba(255,255,255,.08);border-radius:14px;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}.order-card:hover{border-color:#e5383b59;box-shadow:0 4px 20px #0000004d}.order-card-header{display:flex;align-items:center;justify-content:space-between;padding:1.15rem 1.35rem;cursor:pointer;gap:1rem;-webkit-user-select:none;user-select:none;min-height:56px}.order-card-info{display:flex;flex-direction:column;gap:2px}.order-card-number{font-size:.95rem;color:var(--color-strawberry-red-600, #ea6062)}.order-card-date{font-size:.8rem;color:var(--color-silver-500, #b1a7a6)}.order-card-right{display:flex;align-items:center;gap:1rem}.order-card-status{padding:.35rem .85rem;border-radius:20px;font-size:.75rem;letter-spacing:.03em;white-space:nowrap}.order-card-total{font-size:1.05rem;color:var(--color-white, #ffffff)}.accordion-arrow{color:var(--color-silver-500, #b1a7a6);transition:transform .2s ease}.order-card-body{border-top:1px solid rgba(255,255,255,.06);padding:1.25rem 1.35rem;background:#0b090a66}.order-item-row{display:flex;justify-content:space-between;align-items:center;font-size:.9rem;color:var(--color-dust-grey-800, #eeeeee);padding:.4rem 0}.item-name-qty strong{color:var(--color-strawberry-red-500, #e5383b);margin-left:4px}.order-summary-divider{border-top:1px dashed rgba(255,255,255,.12);margin-top:.75rem;padding-top:.75rem}.order-total-row{font-size:1.05rem;margin-top:.35rem}.total-highlight{color:var(--color-strawberry-red-600, #ea6062);font-size:1.15rem}.favorites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem}.favorite-card{background:var(--color-carbon-black-500, #161a1d);border:1px solid rgba(255,255,255,.08);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s ease,border-color .2s ease}.favorite-card:hover{transform:translateY(-3px);border-color:#e5383b59}.favorite-card-img{width:100%;height:140px;object-fit:cover;background:#000}.favorite-card-body{padding:1rem;display:flex;flex-direction:column;flex:1}.favorite-card-name{font-size:.95rem;color:var(--color-white, #ffffff);margin:0 0 4px}.favorite-card-price{font-size:.9rem;color:var(--color-strawberry-red-600, #ea6062);margin:0 0 1rem}.btn-fav-add-cart{width:100%;padding:.65rem .75rem;background:linear-gradient(135deg,var(--color-mahogany-red-500, #ba181b),var(--color-dark-garnet-500, #660708));border:none;border-radius:8px;color:#fff;font-size:.85rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;margin-top:auto;transition:opacity .2s ease}.btn-fav-add-cart:hover{opacity:.9}.btn-fav-remove{width:100%;margin-top:.5rem;padding:.5rem;background:none;border:1px solid rgba(239,29,32,.3);border-radius:8px;color:var(--color-strawberry-red-600, #ea6062);font-size:.8rem;cursor:pointer;min-height:40px;transition:background .15s ease}.btn-fav-remove:hover{background:#ef1d201a}.profile-section{max-width:620px}.profile-form{display:flex;flex-direction:column;gap:1.1rem}.form-group{display:flex;flex-direction:column;gap:.35rem}.form-label{font-size:.85rem;color:var(--color-silver-500, #b1a7a6)}.form-input{width:100%;padding:.75rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:10px;color:#fff;font-size:1rem;font-family:inherit;transition:border-color .2s ease,background .2s ease}.form-input:focus{outline:none;border-color:var(--color-strawberry-red-500, #e5383b);background:#ffffff14}.form-feedback{font-size:.88rem;margin:0}.form-feedback.success{color:#2ecc71}.form-feedback.error{color:#e74c3c}.profile-save-btn{padding:.8rem 2.25rem;background:linear-gradient(135deg,var(--color-mahogany-red-500, #ba181b),var(--color-dark-garnet-500, #660708));border:none;border-radius:10px;color:#fff;font-size:.95rem;cursor:pointer;min-height:44px;transition:transform .15s ease,opacity .15s ease}.profile-save-btn:hover:not(:disabled){transform:translateY(-1px);opacity:.95}.profile-save-btn:disabled{opacity:.5;cursor:not-allowed}.dashboard-mobile-tabs{display:none}@media(max-width:768px){.dashboard-page{flex-direction:column;min-height:100vh}.dashboard-sidebar{display:none}.dashboard-mobile-header{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.15rem;background:var(--color-carbon-black-500, #161a1d);border-bottom:1px solid rgba(255,255,255,.08);position:sticky;top:0;z-index:100}.dashboard-brand-link{display:flex;align-items:center;justify-content:center;text-decoration:none}.dashboard-mobile-logo{height:44px;width:auto;object-fit:contain;filter:drop-shadow(0 3px 10px rgba(229,56,59,.4))}.dashboard-mobile-actions{display:flex;align-items:center;gap:.6rem}.btn-dashboard-back{display:flex;align-items:center;gap:.4rem;padding:.5rem .85rem;background:#e5383b1f;border:1px solid rgba(229,56,59,.3);border-radius:8px;color:var(--color-strawberry-red-600, #ea6062);font-size:.82rem;text-decoration:none;min-height:38px}.btn-dashboard-logout-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;background:#ffffff0d;border:1px solid rgba(239,29,32,.3);border-radius:8px;color:var(--color-strawberry-red-600, #ea6062);cursor:pointer}.dashboard-main{padding:1.25rem 1rem 3rem}.dashboard-mobile-tabs{display:flex;gap:.5rem;padding-bottom:1.25rem;margin-bottom:1.25rem;border-bottom:1px solid rgba(255,255,255,.08);overflow-x:auto;-webkit-overflow-scrolling:touch}.dashboard-mobile-tab-item{display:flex;align-items:center;gap:.4rem;padding:.65rem 1.1rem;background:var(--color-carbon-black-500, #161a1d);border:1px solid rgba(255,255,255,.1);border-radius:20px;color:var(--color-silver-500, #b1a7a6);font-size:.85rem;text-decoration:none;white-space:nowrap;min-height:40px;transition:all .2s ease}.dashboard-mobile-tab-item.active{background:linear-gradient(135deg,var(--color-mahogany-red-500, #ba181b),var(--color-dark-garnet-500, #660708));border-color:var(--color-strawberry-red-500, #e5383b);color:#fff;box-shadow:0 3px 10px #ba181b4d}.dashboard-page-title{font-size:1.35rem;margin-bottom:1.25rem}.order-card-header{flex-wrap:wrap;padding:1rem;gap:.6rem}.order-card-right{width:100%;justify-content:space-between;margin-top:.35rem;padding-top:.35rem;border-top:1px solid rgba(255,255,255,.05)}.favorites-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.85rem}.favorite-card-img{height:120px}.profile-section{max-width:100%}.dashboard-card{padding:1.25rem}}.promo-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:9999;animation:fadeIn .3s ease-in-out}.promo-modal-content{position:relative;width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;align-items:center;border-radius:8px;box-shadow:0 4px 20px #00000080;background:transparent}@media(max-width:768px){.promo-modal-content{max-width:90%}}.promo-modal-close{position:absolute;top:-15px;right:-15px;background-color:#ff4d4d;color:#fff;border:none;border-radius:50%;width:32px;height:32px;font-size:18px;font-weight:700;cursor:pointer;display:flex;justify-content:center;align-items:center;box-shadow:0 2px 5px #0000004d;transition:transform .2s,background-color .2s,opacity .3s ease-in;z-index:10000}.promo-modal-close:hover{transform:scale(1.1);background-color:#ff1a1a}.promo-modal-image{max-width:100%;max-height:85vh;display:block;border-radius:8px;object-fit:contain;cursor:default;animation:fadeIn .5s ease-in}.promo-modal-image.clickable{cursor:pointer}.promo-modal-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;background:#ffffffe6;border-radius:8px;color:#333}.promo-modal-loader .spinner{border:4px solid #f3f3f3;border-top:4px solid #d32f2f;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin-bottom:10px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(max-width:768px){.promo-modal-close{top:-10px;right:-10px;width:28px;height:28px;font-size:16px}}:root{--color-onyx: #0b090a;--color-onyx-100: #020202;--color-onyx-200: #040404;--color-onyx-300: #070606;--color-onyx-400: #090708;--color-onyx-500: #0b090a;--color-onyx-600: #41353b;--color-onyx-700: #77616c;--color-onyx-800: #a7939d;--color-onyx-900: #d3c9ce;--color-carbon-black: #161a1d;--color-carbon-black-100: #040506;--color-carbon-black-200: #090a0c;--color-carbon-black-300: #0d1011;--color-carbon-black-400: #121517;--color-carbon-black-500: #161a1d;--color-carbon-black-600: #3d4951;--color-carbon-black-700: #657786;--color-carbon-black-800: #96a5b0;--color-carbon-black-900: #cbd2d8;--color-dark-garnet: #660708;--color-dark-garnet-100: #140102;--color-dark-garnet-200: #280303;--color-dark-garnet-300: #3c0405;--color-dark-garnet-400: #500607;--color-dark-garnet-500: #660708;--color-dark-garnet-600: #af0c0f;--color-dark-garnet-700: #ef1d20;--color-dark-garnet-800: #f5686b;--color-dark-garnet-900: #fab4b5;--color-mahogany-red-dark: #a4161a;--color-mahogany-red-dark-100: #200405;--color-mahogany-red-dark-200: #41090b;--color-mahogany-red-dark-300: #610d10;--color-mahogany-red-dark-400: #811215;--color-mahogany-red-dark-500: #a4161a;--color-mahogany-red-dark-600: #db1e24;--color-mahogany-red-dark-700: #e75358;--color-mahogany-red-dark-800: #ef8c8f;--color-mahogany-red-dark-900: #f7c6c7;--color-mahogany-red: #ba181b;--color-mahogany-red-100: #250505;--color-mahogany-red-200: #4a0a0b;--color-mahogany-red-300: #6f0e10;--color-mahogany-red-400: #941315;--color-mahogany-red-500: #ba181b;--color-mahogany-red-600: #e32a2d;--color-mahogany-red-700: #ea5f62;--color-mahogany-red-800: #f19496;--color-mahogany-red-900: #f8cacb;--color-strawberry-red: #e5383b;--color-strawberry-red-100: #330707;--color-strawberry-red-200: #650d0f;--color-strawberry-red-300: #981416;--color-strawberry-red-400: #ca1a1d;--color-strawberry-red-500: #e5383b;--color-strawberry-red-600: #ea6062;--color-strawberry-red-700: #f0888a;--color-strawberry-red-800: #f5b0b1;--color-strawberry-red-900: #fad7d8;--color-silver: #b1a7a6;--color-silver-100: #252020;--color-silver-200: #494040;--color-silver-300: #6e615f;--color-silver-400: #918280;--color-silver-500: #b1a7a6;--color-silver-600: #c0b8b7;--color-silver-700: #d0cac9;--color-silver-800: #e0dbdb;--color-silver-900: #efeded;--color-dust-grey: #d3d3d3;--color-dust-grey-100: #2a2a2a;--color-dust-grey-200: #555555;--color-dust-grey-300: #7f7f7f;--color-dust-grey-400: #a9a9a9;--color-dust-grey-500: #d3d3d3;--color-dust-grey-600: #dcdcdc;--color-dust-grey-700: #e5e5e5;--color-dust-grey-800: #eeeeee;--color-dust-grey-900: #f6f6f6;--color-white-smoke: #f5f3f4;--color-white-smoke-100: #352d31;--color-white-smoke-200: #6b5962;--color-white-smoke-300: #9d8993;--color-white-smoke-400: #c9bfc4;--color-white-smoke-500: #f5f3f4;--color-white-smoke-600: #f8f6f7;--color-white-smoke-700: #f9f8f9;--color-white-smoke-800: #fbfbfb;--color-white-smoke-900: #fdfdfd;--color-white: #ffffff;--color-white-100: #333333;--color-white-200: #666666;--color-white-300: #999999;--color-white-400: #cccccc;--color-white-500: #ffffff;--color-white-600: #ffffff;--color-white-700: #ffffff;--color-white-800: #ffffff;--color-white-900: #ffffff}:root{--font-roboto: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--font-serif: "Cormorant Garamond", "Noto Serif JP", serif;--fw-thin: 100;--fw-light: 300;--fw-regular: 400;--fw-medium: 500;--fw-bold: 700;--fw-black: 900;--fs-xs: .75rem;--fs-sm: .875rem;--fs-base: 1rem;--fs-lg: 1.125rem;--fs-xl: 1.25rem;--fs-2xl: 1.5rem;--fs-3xl: 1.875rem;--fs-4xl: 2.25rem;--fs-5xl: 3rem;--lh-tight: 1.15;--lh-snug: 1.25;--lh-normal: 1.5;--lh-relaxed: 1.625;--ls-tighter: -.03em;--ls-tight: -.015em;--ls-normal: 0em;--ls-wide: .025em;--ls-wider: .05em;--ls-widest: .1em}body{font-family:var(--font-roboto);font-size:var(--fs-base);font-weight:var(--fw-regular);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.font-roboto{font-family:var(--font-roboto)}.font-light{font-weight:var(--fw-light)!important}.font-regular{font-weight:var(--fw-regular)!important}.font-medium{font-weight:var(--fw-medium)!important}.font-bold{font-weight:var(--fw-bold)!important}.font-black{font-weight:var(--fw-black)!important}.text-display{font-family:var(--font-roboto);font-size:var(--fs-5xl);font-weight:var(--fw-black);line-height:var(--lh-tight);letter-spacing:var(--ls-tighter)}.text-h1{font-family:var(--font-roboto);font-size:var(--fs-4xl);font-weight:var(--fw-bold);line-height:var(--lh-snug);letter-spacing:var(--ls-tight)}.text-h2{font-family:var(--font-roboto);font-size:var(--fs-3xl);font-weight:var(--fw-bold);line-height:var(--lh-snug)}.text-h3{font-family:var(--font-roboto);font-size:var(--fs-2xl);font-weight:var(--fw-medium);line-height:var(--lh-snug)}.text-h4{font-family:var(--font-roboto);font-size:var(--fs-xl);font-weight:var(--fw-medium);line-height:var(--lh-normal)}.text-body{font-size:var(--fs-base);font-weight:var(--fw-regular);line-height:var(--lh-normal)}.text-body-medium{font-size:var(--fs-base);font-weight:var(--fw-medium);line-height:var(--lh-normal)}.text-body-bold{font-size:var(--fs-base);font-weight:var(--fw-bold);line-height:var(--lh-normal)}.text-subtext{font-size:var(--fs-sm);font-weight:var(--fw-regular);line-height:var(--lh-normal)}.text-caption{font-size:var(--fs-xs);font-weight:var(--fw-light);line-height:var(--lh-normal);letter-spacing:var(--ls-wide)}.text-btn{font-size:var(--fs-base);font-weight:var(--fw-medium);letter-spacing:var(--ls-wide);line-height:var(--lh-tight)}.text-badge{font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:var(--ls-wider);text-transform:uppercase}body{margin:0;padding:0;font-family:var(--font-roboto)}.titulo,.descripcion{font-family:"Noto Serif JP",var(--font-serif)}
