.CartItem-module__sVqlWW__item{gap:var(--space-4);display:flex}.CartItem-module__sVqlWW__image{border-radius:var(--radius-hand);object-fit:cover;background-color:var(--color-accent-light);flex-shrink:0;width:56px;height:70px}.CartItem-module__sVqlWW__imagePlaceholder{border-radius:var(--radius-hand);background-color:var(--color-accent-light);flex-shrink:0;width:56px;height:70px}.CartItem-module__sVqlWW__info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.CartItem-module__sVqlWW__name{font-family:var(--font-display);font-size:var(--text-base);color:var(--color-text)}.CartItem-module__sVqlWW__variant{font-size:var(--text-xs);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-stamp);color:var(--color-text-muted)}.CartItem-module__sVqlWW__remove{font-size:var(--text-xs);color:var(--color-text-muted);cursor:pointer;text-underline-offset:2px;text-align:left;background:0 0;border:none;margin-top:2px;padding:0;text-decoration:underline;transition:color .15s}.CartItem-module__sVqlWW__remove:hover{color:var(--color-error)}.CartItem-module__sVqlWW__bottom{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.CartItem-module__sVqlWW__quantity{align-items:center;gap:var(--space-2);display:flex}.CartItem-module__sVqlWW__qtyBtn{width:24px;height:24px;font-size:var(--text-sm);color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius-hand);cursor:pointer;justify-content:center;align-items:center;transition:border-color .15s;display:flex}.CartItem-module__sVqlWW__qtyBtn:hover{border-color:var(--color-border-dark)}.CartItem-module__sVqlWW__qtyCount{font-size:var(--text-sm);font-weight:var(--weight-medium);text-align:center;min-width:20px}.CartItem-module__sVqlWW__price{font-size:var(--text-sm);font-weight:var(--weight-medium)}
.CartPanel-module__xk7poW__overlay{z-index:200;pointer-events:none;opacity:0;transition:opacity .2s;position:fixed;inset:0}.CartPanel-module__xk7poW__overlayOpen{pointer-events:auto;opacity:1}.CartPanel-module__xk7poW__backdrop{background-color:#2c241659;position:absolute;inset:0}.CartPanel-module__xk7poW__panel{background-color:var(--color-surface);border-left:1px solid var(--color-border);flex-direction:column;width:100%;max-width:400px;transition:transform .25s;display:flex;position:absolute;top:0;bottom:0;right:0;transform:translate(100%)}.CartPanel-module__xk7poW__overlayOpen .CartPanel-module__xk7poW__panel{transform:translate(0)}.CartPanel-module__xk7poW__header{padding:var(--space-6);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.CartPanel-module__xk7poW__title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-regular)}.CartPanel-module__xk7poW__closeBtn{cursor:pointer;width:28px;height:28px;color:var(--color-text-muted);font-size:var(--text-xl);font-family:var(--font-body);font-weight:var(--weight-light);justify-content:center;align-items:center;transition:color .15s;display:flex}.CartPanel-module__xk7poW__closeBtn:hover{color:var(--color-text)}.CartPanel-module__xk7poW__items{padding:var(--space-6);gap:var(--space-6);flex-direction:column;flex:1;display:flex;overflow-y:auto}.CartPanel-module__xk7poW__empty{justify-content:center;align-items:center;gap:var(--space-4);color:var(--color-text-muted);padding:var(--space-8);flex-direction:column;flex:1;display:flex}.CartPanel-module__xk7poW__emptyIcon{opacity:.4;width:48px;height:48px}.CartPanel-module__xk7poW__emptyText{font-family:var(--font-display);font-size:var(--text-lg);font-style:italic}.CartPanel-module__xk7poW__emptyLink{font-size:var(--text-sm);color:var(--color-accent);text-underline-offset:3px;text-decoration:underline}.CartPanel-module__xk7poW__footer{padding:var(--space-6);border-top:1px solid var(--color-border);gap:var(--space-4);flex-direction:column;display:flex}.CartPanel-module__xk7poW__subtotalRow{font-size:var(--text-sm);color:var(--color-text-muted);justify-content:space-between;display:flex}.CartPanel-module__xk7poW__subtotalValue{font-weight:var(--weight-medium);color:var(--color-text)}.CartPanel-module__xk7poW__shippingNote{font-size:var(--text-xs);color:var(--color-text-muted);text-align:center}
.Input-module__rdnxQa__wrapper{gap:var(--space-1);flex-direction:column;display:flex}.Input-module__rdnxQa__label{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-text-muted);letter-spacing:var(--tracking-stamp);text-transform:uppercase}.Input-module__rdnxQa__input{width:100%;font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-light);color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-hand);padding:12px 14px;transition:border-color .2s}.Input-module__rdnxQa__input::placeholder{color:var(--color-text-muted);opacity:.5}.Input-module__rdnxQa__input:focus{border-color:var(--color-border-dark);outline:none}.Input-module__rdnxQa__input:disabled{opacity:.45;cursor:not-allowed}.Input-module__rdnxQa__hasError .Input-module__rdnxQa__input{border-color:var(--color-error)}.Input-module__rdnxQa__error{font-size:var(--text-xs);color:var(--color-error);margin-top:2px}
.AuthModal-module__jrbLjq__overlay{z-index:300;pointer-events:none;opacity:0;padding:var(--space-6);justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:fixed;inset:0}.AuthModal-module__jrbLjq__overlayOpen{pointer-events:auto;opacity:1}.AuthModal-module__jrbLjq__backdrop{background-color:#2c241659;position:absolute;inset:0}.AuthModal-module__jrbLjq__modal{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-hand);width:100%;max-width:380px;padding:var(--space-10);transition:transform .2s;position:relative;transform:translateY(8px)}.AuthModal-module__jrbLjq__overlayOpen .AuthModal-module__jrbLjq__modal{transform:translateY(0)}.AuthModal-module__jrbLjq__header{text-align:center;margin-bottom:var(--space-8)}.AuthModal-module__jrbLjq__title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-regular);margin-bottom:var(--space-2)}.AuthModal-module__jrbLjq__subtitle{font-size:var(--text-sm);font-weight:var(--weight-light);color:var(--color-text-muted);line-height:var(--leading-normal)}.AuthModal-module__jrbLjq__form{gap:var(--space-4);flex-direction:column;display:flex}.AuthModal-module__jrbLjq__error{font-size:var(--text-sm);color:var(--color-error);text-align:center;padding:var(--space-3);border-radius:var(--radius-hand);background-color:#f5e8e6}.AuthModal-module__jrbLjq__switch{text-align:center;margin-top:var(--space-6);font-size:var(--text-sm);color:var(--color-text-muted)}.AuthModal-module__jrbLjq__switchLink{color:var(--color-accent);cursor:pointer;font-weight:var(--weight-medium);text-underline-offset:2px;background:0 0;border:none;text-decoration:underline}.AuthModal-module__jrbLjq__close{top:var(--space-4);right:var(--space-4);width:28px;height:28px;color:var(--color-text-muted);cursor:pointer;font-size:var(--text-lg);justify-content:center;align-items:center;transition:color .15s;display:flex;position:absolute}.AuthModal-module__jrbLjq__close:hover{color:var(--color-text)}.AuthModal-module__jrbLjq__doodle{bottom:var(--space-4);right:var(--space-4);opacity:.15;pointer-events:none;position:absolute}
.Navbar-module__O8Na-a__nav{z-index:100;background-color:var(--color-bg);border-bottom:1px solid var(--color-border);height:56px;position:fixed;top:0;left:0;right:0}.Navbar-module__O8Na-a__inner{max-width:var(--max-width);padding:0 var(--space-6);justify-content:space-between;align-items:center;height:100%;margin:0 auto;display:flex}.Navbar-module__O8Na-a__logoLink{align-items:center;gap:var(--space-3);text-decoration:none;display:flex}.Navbar-module__O8Na-a__logoImg{object-fit:contain;width:32px;height:32px}.Navbar-module__O8Na-a__logoText{font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-regular);color:var(--color-text);letter-spacing:.02em}.Navbar-module__O8Na-a__rightCluster{align-items:center;gap:var(--space-6);display:flex}.Navbar-module__O8Na-a__navLink{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-regular);color:var(--color-text-muted);text-decoration:none;transition:color .15s;position:relative}.Navbar-module__O8Na-a__navLink:hover{color:var(--color-text)}.Navbar-module__O8Na-a__authArea{position:relative}.Navbar-module__O8Na-a__authBtn{font-size:var(--text-sm);font-weight:var(--weight-regular);color:var(--color-text-muted);cursor:pointer;padding:0;transition:color .15s}.Navbar-module__O8Na-a__authBtn:hover{color:var(--color-text)}.Navbar-module__O8Na-a__userName{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text);cursor:pointer;padding:var(--space-1) 0}.Navbar-module__O8Na-a__dropdown{top:calc(100% + var(--space-2));background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-hand);padding:var(--space-2) 0;opacity:0;pointer-events:none;z-index:110;min-width:160px;transition:opacity .15s,transform .15s;position:absolute;right:0;transform:translateY(-4px)}.Navbar-module__O8Na-a__dropdownOpen{opacity:1;pointer-events:auto;transform:translateY(0)}.Navbar-module__O8Na-a__dropdownItem{text-align:left;width:100%;padding:var(--space-2) var(--space-4);font-size:var(--text-sm);color:var(--color-text-muted);text-decoration:none;transition:color .15s,background-color .15s;display:block}.Navbar-module__O8Na-a__dropdownItem:hover{color:var(--color-text);background-color:var(--color-accent-light)}.Navbar-module__O8Na-a__dropdownDivider{background-color:var(--color-border);height:1px;margin:var(--space-1) 0}.Navbar-module__O8Na-a__signOutItem{color:var(--color-error)}.Navbar-module__O8Na-a__signOutItem:hover{background-color:#f5e8e6}.Navbar-module__O8Na-a__cartBtn{padding:var(--space-1);color:var(--color-text-muted);align-items:center;transition:color .15s;display:flex;position:relative}.Navbar-module__O8Na-a__cartBtn:hover{color:var(--color-text)}.Navbar-module__O8Na-a__cartBadge{background-color:var(--color-accent);min-width:16px;height:16px;color:var(--color-surface);font-size:9px;font-weight:var(--weight-semibold);border-radius:50%;justify-content:center;align-items:center;padding:0 4px;line-height:1;display:flex;position:absolute;top:-4px;right:-8px}.Navbar-module__O8Na-a__cartBounce{animation:.3s Navbar-module__O8Na-a__bounce}.Navbar-module__O8Na-a__hamburger{padding:var(--space-1);cursor:pointer;flex-direction:column;gap:5px;display:none}.Navbar-module__O8Na-a__hamburger span{background-color:var(--color-text);width:20px;height:1.5px;transition:transform .2s,opacity .2s;display:block}.Navbar-module__O8Na-a__hamburgerOpen span:first-child{transform:translateY(6.5px)rotate(45deg)}.Navbar-module__O8Na-a__hamburgerOpen span:nth-child(2){opacity:0}.Navbar-module__O8Na-a__hamburgerOpen span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.Navbar-module__O8Na-a__desktopLinks{align-items:center;gap:var(--space-6);display:flex}.Navbar-module__O8Na-a__overlay{background-color:var(--color-bg);z-index:99;justify-content:center;align-items:center;gap:var(--space-10);flex-direction:column;display:none;position:fixed;inset:0}.Navbar-module__O8Na-a__overlayOpen{display:flex}.Navbar-module__O8Na-a__overlayLink{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--color-text);text-decoration:none;transition:color .2s}.Navbar-module__O8Na-a__overlayLink:hover{color:var(--color-accent)}.Navbar-module__O8Na-a__overlayDoodle{opacity:.15;position:absolute}.Navbar-module__O8Na-a__overlayDoodleTL{top:var(--space-8);left:var(--space-8)}.Navbar-module__O8Na-a__overlayDoodleBR{bottom:var(--space-8);right:var(--space-8)}.Navbar-module__O8Na-a__spacer{height:56px}@media (max-width:768px){.Navbar-module__O8Na-a__inner{padding:0 var(--space-4)}.Navbar-module__O8Na-a__desktopLinks{display:none}.Navbar-module__O8Na-a__hamburger{display:flex}.Navbar-module__O8Na-a__mobileRight{align-items:center;gap:var(--space-4);display:flex}}@media (min-width:769px){.Navbar-module__O8Na-a__mobileRight{display:none}}
.Footer-module__yg9ahW__footer{border-top:1px solid var(--color-border);padding:var(--space-12) var(--space-6);margin-top:var(--space-16)}.Footer-module__yg9ahW__inner{max-width:var(--max-width);justify-content:space-between;align-items:flex-start;gap:var(--space-8);margin:0 auto;display:flex}.Footer-module__yg9ahW__brand{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-regular);margin-bottom:var(--space-2)}.Footer-module__yg9ahW__tagline{font-size:var(--text-sm);font-weight:var(--weight-light);color:var(--color-text-muted);max-width:260px;line-height:var(--leading-normal)}.Footer-module__yg9ahW__column{gap:var(--space-2);flex-direction:column;display:flex}.Footer-module__yg9ahW__columnTitle{font-size:var(--text-xs);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-stamp);color:var(--color-text-muted);margin-bottom:var(--space-1)}.Footer-module__yg9ahW__footerLink{font-size:var(--text-sm);font-weight:var(--weight-light);color:var(--color-text-muted);text-decoration:none;transition:color .15s}.Footer-module__yg9ahW__footerLink:hover{color:var(--color-text)}.Footer-module__yg9ahW__copyright{font-size:var(--text-xs);color:var(--color-text-muted);text-align:center;padding-top:var(--space-8);margin-top:var(--space-8);border-top:1px solid var(--color-border);max-width:var(--max-width);margin-left:auto;margin-right:auto}@media (max-width:768px){.Footer-module__yg9ahW__inner{gap:var(--space-10);flex-direction:column}}
.Button-module__VMVMAW__button{justify-content:center;align-items:center;gap:var(--space-2);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wide);text-transform:uppercase;cursor:pointer;white-space:nowrap;border-radius:var(--radius-hand);border:none;line-height:1;transition:filter .15s,opacity .15s;display:inline-flex}.Button-module__VMVMAW__button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.Button-module__VMVMAW__primary{background-color:var(--color-accent);color:var(--color-surface);padding:15px 28px}.Button-module__VMVMAW__primary:hover:not(:disabled){filter:brightness(.9)}.Button-module__VMVMAW__secondary{color:var(--color-text);border:1px solid var(--color-border);background-color:#0000;padding:13px 24px}.Button-module__VMVMAW__secondary:hover:not(:disabled){border-color:var(--color-border-dark)}.Button-module__VMVMAW__ghost{color:var(--color-text-muted);text-transform:none;letter-spacing:var(--tracking-normal);background-color:#0000;padding:8px 16px}.Button-module__VMVMAW__ghost:hover:not(:disabled){color:var(--color-text)}.Button-module__VMVMAW__sm{font-size:var(--text-xs);padding:10px 16px}.Button-module__VMVMAW__lg{font-size:var(--text-base);padding:16px 36px}.Button-module__VMVMAW__fullWidth{width:100%}.Button-module__VMVMAW__button:disabled{opacity:.45;cursor:not-allowed}.Button-module__VMVMAW__loading{color:#0000;position:relative}.Button-module__VMVMAW__loading:after{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite Button-module__VMVMAW__spin;position:absolute}.Button-module__VMVMAW__primary.Button-module__VMVMAW__loading:after{border-color:var(--color-surface);border-right-color:#0000}
.page-module__jhZ8IG__page{min-height:100vh;padding:var(--spacing-xl);background-color:var(--color-bg);justify-content:center;align-items:center;display:flex}.page-module__jhZ8IG__card{background-color:var(--color-surface);border-radius:var(--radius-md);width:100%;max-width:380px;padding:var(--spacing-2xl)}.page-module__jhZ8IG__logo{font-family:var(--font-heading);font-size:var(--text-xl);font-weight:var(--weight-semibold);letter-spacing:.08em;text-align:center;margin-bottom:var(--spacing-xs)}.page-module__jhZ8IG__subtitle{font-size:var(--text-sm);color:var(--color-text-muted);text-align:center;margin-bottom:var(--spacing-xl)}.page-module__jhZ8IG__form{gap:var(--spacing-md);flex-direction:column;display:flex}.page-module__jhZ8IG__error{font-size:var(--text-sm);color:var(--color-error);text-align:center;padding:var(--spacing-sm);border-radius:var(--radius-sm);background-color:#fdeded}
