.bag-overlay{position:fixed;inset:0;background:rgba(18,15,24,.6);opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:180}.bag-overlay--visible{opacity:1;pointer-events:auto}.bag-drawer{position:fixed;inset:0 0 0 auto;width:clamp(260px,20vw,420px);max-width:420px;height:100dvh;min-height:100vh;background:rgba(31,27,40,.98);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#f9f7ff;transform:translateX(100%);transition:transform .22s ease;display:flex;flex-direction:column;border-left:4px solid transparent;box-shadow:none;z-index:200;gap:clamp(1rem,2.5vw,1.5rem);padding:max(clamp(1rem,3vw,1.5rem),env(safe-area-inset-top)) clamp(1rem,3vw,1.5rem) max(clamp(1rem,3vw,1.5rem),env(safe-area-inset-bottom))}.bag-drawer--open{transform:translateX(0)}.bag-drawer__header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.bag-drawer__title-group{display:flex;align-items:center;gap:.75rem}.bag-drawer__title{font-size:1.5rem;font-weight:700}.bag-drawer__badge{display:inline-flex;align-items:center;justify-content:center;min-width:2.25rem;padding:.25rem .75rem;border-radius:999px;background:rgba(249,115,22,.2);border:1px solid rgba(249,115,22,.5);color:#f97316;font-weight:600}.bag-drawer__close{border:none;background:transparent;color:inherit;font-size:.95rem;font-weight:600;cursor:pointer;text-transform:uppercase;letter-spacing:.04em}.bag-drawer__content{flex:1 1;overflow-y:auto;padding-right:.25rem}.bag-drawer__empty{color:rgba(249,247,255,.75)}.bag-drawer__list{display:flex;flex-direction:column;gap:1rem;list-style:none}.bag-drawer__item{display:grid;grid-template-columns:88px 1fr;grid-gap:1rem;gap:1rem;padding:.75rem;border-radius:10px;background:rgba(255,255,255,.04);border:1px solid rgba(249,115,22,.18)}.bag-drawer__item-media{position:relative;width:88px;height:88px;border-radius:8px;overflow:hidden;background:rgba(0,0,0,.2);display:flex;align-items:center;justify-content:center;color:rgba(249,247,255,.7);font-weight:700;font-size:1.6rem}.bag-drawer__item-image{object-fit:cover}.bag-drawer__item-info{display:flex;flex-direction:column;gap:.4rem}.bag-drawer__item-name{font-size:1rem;line-height:1.2}.bag-drawer__item-price{font-weight:600}.bag-drawer__item-stock{font-size:.8rem;color:rgba(249,247,255,.6)}.bag-drawer__item-actions{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin-top:.5rem}.bag-drawer__quantity{display:inline-flex;align-items:center;border-radius:999px;background:rgba(249,247,255,.08);border:1px solid rgba(249,115,22,.25);overflow:hidden}.bag-drawer__quantity-button{width:32px;height:32px;border:none;background:transparent;color:inherit;font-size:1.1rem;font-weight:700;cursor:pointer;transition:background .15s ease}.bag-drawer__quantity-button:disabled{opacity:.4;cursor:not-allowed}.bag-drawer__quantity-button:not(:disabled):focus-visible,.bag-drawer__quantity-button:not(:disabled):hover{background:rgba(249,115,22,.25)}.bag-drawer__quantity-value{min-width:2.5rem;text-align:center;font-weight:600}.bag-drawer__remove{border:none;background:transparent;color:rgba(249,115,22,.85);font-weight:600;cursor:pointer;text-transform:uppercase;letter-spacing:.04em}.bag-drawer__footer{display:flex;flex-direction:column;gap:.75rem;border-top:1px solid rgba(249,115,22,.2);padding-top:.75rem;padding-bottom:max(clamp(1.4rem,7vh,2.2rem),env(safe-area-inset-bottom) + clamp(1rem,2.5vh,1.75rem))}.bag-drawer__totals{display:flex;flex-direction:column;gap:.35rem}.bag-drawer__discount-message{font-size:.85rem;line-height:1.4;background:rgba(249,115,22,.1);border:1px solid rgba(249,115,22,.25);color:rgba(249,247,255,.85);border-radius:12px;padding:.65rem .8rem}.bag-drawer__discount-message--active{background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.4);color:#4ade80}.bag-drawer__discount,.bag-drawer__subtotal,.bag-drawer__total{display:flex;align-items:baseline;justify-content:space-between;font-size:1rem}.bag-drawer__discount span{color:rgba(249,247,255,.7)}.bag-drawer__discount strong,.bag-drawer__subtotal strong,.bag-drawer__total strong{font-size:1.2rem}.bag-drawer__discount strong{color:#f97316}.bag-drawer__total strong{font-size:1.35rem}.bag-drawer__footer-actions{display:flex;gap:.75rem;flex-wrap:wrap}.bag-drawer__clear{flex:1 1;min-width:140px;padding:.65rem 1rem;border-radius:999px;border:2px solid rgba(249,115,22,.8);background:transparent;color:inherit;font-weight:700;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;transition:background .15s ease,color .15s ease}.bag-drawer__clear:disabled{opacity:.4;cursor:not-allowed}.bag-drawer__clear:not(:disabled):focus-visible,.bag-drawer__clear:not(:disabled):hover{background:rgba(249,115,22,.2)}.bag-drawer__checkout{flex:1 1;min-width:140px}@media (max-width:768px){.bag-drawer{width:80vw;max-width:unset;border-left-width:6px}.bag-drawer__item{grid-template-columns:72px 1fr}.bag-drawer__item-media{width:72px;height:72px}}@media (prefers-color-scheme:light){.bag-drawer{background:rgba(247,242,255,.96);color:#1f1237;border-left-color:rgba(124,58,237,.15)}.bag-overlay{background:rgba(32,22,54,.35)}.bag-drawer__badge{background:rgba(249,115,22,.15);border-color:rgba(249,115,22,.45);color:#b45309}.bag-drawer__item{background:rgba(255,255,255,.78);border-color:rgba(124,58,237,.18)}.bag-drawer__item-stock{color:rgba(47,35,73,.65)}.bag-drawer__quantity{background:rgba(124,58,237,.08);border-color:rgba(124,58,237,.2)}.bag-drawer__clear{color:#44315d}.bag-drawer__footer{border-top-color:rgba(124,58,237,.18)}.bag-drawer__discount-message{background:rgba(249,115,22,.1);border-color:rgba(249,115,22,.3);color:rgba(31,18,55,.8)}.bag-drawer__discount-message--active{background:rgba(34,197,94,.14);border-color:rgba(34,197,94,.45);color:#1f7a47}.bag-drawer__discount span{color:rgba(31,18,55,.65)}.bag-drawer__discount strong{color:#b45309}.bag-drawer__total strong{color:#2d1e50}}.cookie-consent{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:rgba(0,0,0,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1.5rem;box-shadow:0 -4px 12px rgba(0,0,0,.3);animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.cookie-consent__container{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:2rem}.cookie-consent__content{flex:1 1}.cookie-consent__text{color:white;font-size:.95rem;line-height:1.5;margin:0}.cookie-consent__link{color:var(--color-primary);text-decoration:underline;font-weight:500;transition:color .2s ease}.cookie-consent__link:hover{color:var(--color-primary-dark)}.cookie-consent__actions{flex-shrink:0}.cookie-consent__button{min-width:120px;white-space:nowrap}@media (max-width:768px){.cookie-consent{padding:1rem}.cookie-consent__container{flex-direction:column;gap:1rem;align-items:stretch}.cookie-consent__text{font-size:.875rem;text-align:center}.cookie-consent__actions{display:flex;justify-content:center}.cookie-consent__button{width:100%;max-width:200px}}@media (max-width:480px){.cookie-consent{padding:.75rem}.cookie-consent__text{font-size:.8125rem}.cookie-consent__button{max-width:none}}.cpf-reminder-toast{position:fixed;top:20px;right:20px;background:linear-gradient(135deg,#667eea,#764ba2);color:white;padding:16px 20px;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,.3);display:flex;align-items:center;gap:12px;max-width:350px;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease;z-index:10000;animation:slideInRight .5s ease}.cpf-reminder-toast:hover{transform:translateY(-2px);box-shadow:0 6px 25px rgba(0,0,0,.4)}.cpf-reminder-toast__content{display:flex;align-items:center;gap:12px;flex:1 1}.cpf-reminder-toast__icon{font-size:24px;flex-shrink:0}.cpf-reminder-toast__message{flex:1 1}.cpf-reminder-toast__message strong{display:block;font-size:15px;margin-bottom:4px;font-weight:600}.cpf-reminder-toast__message p{margin:0;font-size:13px;opacity:.95}.cpf-reminder-toast__close{background:none;border:none;color:white;font-size:24px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s ease;flex-shrink:0}.cpf-reminder-toast__close:hover{background:rgba(255,255,255,.2)}@keyframes slideInRight{0%{transform:translateX(400px);opacity:0}to{transform:translateX(0);opacity:1}}@media (max-width:768px){.cpf-reminder-toast{right:10px;left:10px;max-width:none;top:10px}}.footer{position:fixed;bottom:0;width:100%;height:var(--footer-height,20vh);z-index:100;pointer-events:none;transform:rotate(180deg);transform-origin:center}.footer__frame-wrapper{display:block;position:absolute;width:100%;height:100%;top:0;left:0;z-index:1;pointer-events:none;-webkit-mask-image:url(/frame_PC.png);-webkit-mask-repeat:no-repeat;-webkit-mask-size:100% 100%;-webkit-mask-position:top center;mask-image:url(/frame_PC.png);mask-repeat:no-repeat;mask-size:100% 100%;mask-position:top center}.footer-frame{object-fit:fill;object-position:center;pointer-events:none}.footer__content{position:relative;display:flex;width:100%;height:100%;z-index:10;pointer-events:none}.footer__section{display:flex;align-items:center;pointer-events:none}.footer__section--left{flex:1 1;padding-left:3%;justify-content:flex-start}.footer__section--center{flex:1 1;justify-content:center;align-items:center}.footer__section--right{flex:1 1;padding-right:3%;justify-content:flex-end}.hexagonal-button-bottom{display:flex;width:11vh;height:11vh;align-items:center;justify-content:center;transform:rotate(180deg);transform-origin:center;background:transparent;border:none;padding:0;cursor:pointer;margin-left:6.6vw;margin-bottom:.65vh;pointer-events:auto}.hexagonal-button-bottom__inner{position:relative;display:inline-block}.bag-notification{position:absolute;top:5%;left:58%;transform:translate(-50%,-50%);width:2.7vh;height:2.7vh;z-index:1;pointer-events:none;z-index:2;border-radius:50%;background:#f97316;box-shadow:0 0 0 .8px #ffffff,0 0 0 3px #7F0087;color:#fff7ed;font-weight:700;font-size:.7rem}.bag-notification,.bag-notification__count{align-items:center;justify-content:center;transform:rotate(180deg)}.bag-notification__count{display:inline-flex;width:100%;height:100%}.social-icons{display:flex;gap:1.5rem;transform:rotate(180deg);align-items:center;justify-content:center;pointer-events:auto}.social-icon{border-radius:50%;width:3rem;height:3rem;object-fit:cover}@media (max-width:768px){.footer{height:var(--footer-height,14.5vh)}.footer__frame-wrapper{-webkit-mask-image:url(/frame_mobile.png);mask-image:url(/frame_mobile.png)}.footer__section--left{flex:1 1;padding-left:5%}.footer__section--center{flex:1 1;align-items:flex-start;padding-top:3.2vh}.footer__section--right{flex:1 1;padding-right:5%}.hexagonal-button-bottom{width:6.3vh;height:6.3vh;margin-left:6vw;margin-bottom:4.2vh}.bag-notification{width:1.5vh;height:1.5vh;top:5%;right:18%;font-size:.55rem;box-shadow:0 0 0 1.5px #ffffff,0 0 0 3px #7c3aed}.social-icons{gap:1rem}.social-icon{width:1.6rem;height:1.6rem}}.header{position:fixed;height:var(--header-height,20vh);z-index:100;padding-top:max(env(safe-area-inset-top),0px);box-sizing:border-box}.header,.header__frame-wrapper{top:0;width:100%;pointer-events:none}.header__frame-wrapper{display:block;position:absolute;height:100%;left:0;z-index:1;-webkit-mask-image:url(/frame_PC.png);-webkit-mask-repeat:no-repeat;-webkit-mask-size:100% 100%;-webkit-mask-position:top center;mask-image:url(/frame_PC.png);mask-repeat:no-repeat;mask-size:100% 100%;mask-position:top center}.header-frame{object-fit:fill;object-position:center;pointer-events:none}.header__content{position:relative;display:flex;width:100%;height:100%;z-index:10;pointer-events:none}.header__section{display:flex;align-items:center;pointer-events:none}.header__section--left{flex:0 0 auto;padding-left:3%;justify-content:flex-start}.header__section--center{flex:1 1;justify-content:center}.header__section--right{flex:0 0 auto;padding-right:3%;justify-content:flex-end}.logo{display:flex;width:11vh;height:11vh;align-items:center;justify-content:center;margin-left:6.3vw;margin-bottom:1.3vh;pointer-events:auto}.account-menu-wrapper,.hexagonal-button-top{position:relative;display:flex;align-items:center;justify-content:center;pointer-events:auto}.hexagonal-button-top{width:11vh;height:11vh;margin-right:6.3vw;margin-bottom:1.3vh;background:transparent;border:none;padding:0;cursor:pointer;z-index:150}.logoImg{width:100%;height:100%;object-fit:fill}@media (max-width:768px){.header{height:var(--header-height,14.5vh)}.header__section--left{padding-left:5%}.header__section--right{padding-right:5%}.logo{margin-left:4.5vw}.hexagonal-button-top,.logo{width:7vh;height:7vh;margin-bottom:5.7vh}.hexagonal-button-top{margin-right:4.5vw;background:transparent;border:none;padding:0;cursor:pointer}.header__frame-wrapper{-webkit-mask-image:url(/frame_mobile.png);mask-image:url(/frame_mobile.png)}}.account-menu{position:absolute;top:46.5%;right:calc(8vh + 40%);transform:translateY(-50%) scaleX(0);transform-origin:right center;background:rgba(249,115,22,.95);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:10px;padding:.35rem 7vh .35rem .35rem;opacity:0;visibility:hidden;transition:opacity .25s ease,transform .25s ease,visibility .25s;z-index:140;box-shadow:0 8px 24px rgba(0,0,0,.3);pointer-events:none}.account-menu--open{opacity:1;visibility:visible;transform:translateY(-50%) scaleX(1);pointer-events:auto}.account-menu__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:row;gap:.35rem;align-items:center;justify-content:flex-start}.account-menu__item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;padding:.35rem .45rem;border-radius:8px;border:1.5px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);color:#fff;font-size:.65rem;font-weight:700;text-align:center;cursor:pointer;transition:all .18s ease;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;min-width:50px}.account-menu__item:focus-visible,.account-menu__item:hover{background:rgba(255,255,255,.25);border-color:rgba(255,255,255,.5);transform:scale(1.05)}.account-menu__item svg{flex-shrink:0;color:#fff;width:14px;height:14px}.account-menu__item--logout{border-color:rgba(220,38,38,.4);background:rgba(220,38,38,.15)}.account-menu__item--logout svg{color:#fff}.account-menu__item--logout:focus-visible,.account-menu__item--logout:hover{background:rgba(220,38,38,.35);border-color:rgba(220,38,38,.6);transform:scale(1.05)}.account-menu__item--logout:disabled{opacity:.6;cursor:not-allowed}.account-menu__item--login{border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.15)}.account-menu__item--login:focus-visible,.account-menu__item--login:hover{background:rgba(255,255,255,.3);border-color:rgba(255,255,255,.6)}@media (max-width:768px){.account-menu{top:100%;right:-5vw;transform:translateY(-2.6rem) scaleX(0);transform-origin:right center;padding:.35rem .35rem .5rem;width:auto;max-width:140px}.account-menu--open{transform:translateY(-2.6rem) scaleX(1)}.account-menu__list{flex-direction:column;gap:.35rem}.account-menu__item{font-size:.6rem;padding:.35rem .45rem;min-width:auto;width:100%;flex-direction:row;justify-content:flex-start;gap:.4rem}.account-menu__item svg{width:12px;height:12px}}@media (prefers-color-scheme:light){.account-menu{background:rgba(249,115,22,.95)}.account-menu__item{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.3);color:#fff}.account-menu__item:focus-visible,.account-menu__item:hover{background:rgba(255,255,255,.3);border-color:rgba(255,255,255,.6)}.account-menu__item svg{color:#fff}.account-menu__item--login{background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.4)}.account-menu__item--logout{background:rgba(220,38,38,.2);border-color:rgba(220,38,38,.5)}.account-menu__item--logout svg{color:#fff}.account-menu__item--logout:focus-visible,.account-menu__item--logout:hover{background:rgba(220,38,38,.4);border-color:rgba(220,38,38,.7)}}