/* Shared spacing and alignment, applied after each surface's component styles. */
:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--control-height:48px}
button,input,select,textarea{font-family:inherit}button,a,input,select,textarea{touch-action:manipulation}
.page{padding-top:32px;padding-bottom:48px}.page-heading{gap:12px;margin-bottom:24px;min-height:44px}.page-heading h1{line-height:1.25}.status-copy{font-size:14px;line-height:1.7}.prelaunch-note{margin:0 0 24px;padding:12px 16px;border:1px solid #dfc4a3;border-radius:10px;background:#efddc4;font-size:12px;line-height:1.6;text-wrap:pretty}
.site-head{gap:24px;padding-block:24px}.topnav button{padding:12px;font-size:13px;white-space:nowrap}.header-tools{gap:10px}.location{white-space:nowrap}.brand{flex-shrink:0}.cart-head{white-space:nowrap}
.home-top{margin-bottom:20px}.search-wrap input{height:48px}.search-wrap svg{top:15px}.categories{padding-block:24px;gap:32px}.section-title{margin:28px 0 16px;gap:16px}.section-title h2{line-height:1.3}.products-grid{gap:20px;align-items:stretch}.product-card{display:flex;flex-direction:column}.product-card .card-body{display:flex;flex-direction:column;flex:1;padding:14px 14px 10px}.product-card h3{line-height:1.45;min-height:2.9em;overflow-wrap:anywhere}.card-bottom{margin-top:auto;padding-top:8px;gap:8px}.product-photo img{height:auto}.filters{padding:24px 0;gap:8px}.filter{min-height:40px}.club-invite{margin-top:28px;padding:20px 24px}
.product-detail{gap:40px;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}.detail-content{padding-top:8px}.detail-content h1{font-size:30px;line-height:1.2;overflow-wrap:anywhere}.detail-price{margin:16px 0}.detail-content>p{line-height:1.8}.qualities{padding-block:24px;gap:16px}.quality{min-width:92px;line-height:1.6}.purchase{gap:16px;margin-top:24px}.detail-points{line-height:1.7}.product-gallery{gap:12px;padding-top:16px}.product-gallery button{border-width:1px;min-height:72px}
.cart-layout,.checkout-layout{gap:32px;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}.cart-item{grid-template-columns:80px minmax(0,1fr) auto;gap:16px;padding-block:20px}.cart-item>div{min-width:0}.cart-item h3{font-size:14px;line-height:1.5;overflow-wrap:anywhere}.cart-item .small{margin:6px 0 10px}.cart-item .stepper{min-width:108px}.cart-item .stepper button{width:36px;height:36px}.item-end .price{white-space:nowrap}.summary-box{padding:24px}.coupon{gap:8px;margin-bottom:24px;align-items:stretch}.coupon input{min-height:48px;font-size:13px}.coupon .button{min-height:48px}.total-row{line-height:1.5}.total-row.grand{padding-top:20px}.receipt-mode{gap:12px;padding-block:20px}.choice{line-height:1.5}.choice small{line-height:1.6}.points-note{line-height:1.7;margin-top:16px}
.field{gap:8px;margin:16px 0;font-size:13px;line-height:1.5}.field input,.field select{height:48px;font-size:14px;line-height:1.5}.field textarea{line-height:1.7}.form-grid{gap:20px;align-items:end}.form-grid>.field{margin:0;min-width:0}.address-form .form-grid{gap:20px;margin-block:24px}.account-form{margin-top:24px}.account h2{font-size:24px;line-height:1.3}.account>p{line-height:1.75}.account-mascot{margin-block:16px 24px}.account-form .button{margin-top:24px}.management-link{margin-top:20px;line-height:1.6}.signature{margin-top:20px;padding:16px 20px}.text-button{min-height:40px;line-height:1.5}.profile-top{gap:20px;margin-bottom:24px}.profile-top>div{min-width:0}.profile-link{gap:16px;padding:20px;margin-block:12px}.profile-link>span{min-width:0;flex:1}.profile-link strong{line-height:1.45}.profile-link small{line-height:1.6}.preference{gap:20px;padding-block:20px}.preference>span:first-child{min-width:0}.preference strong{line-height:1.5}.preference small{line-height:1.6}.preferences{margin-top:32px}
.address-list{gap:20px}.address-card,.address-form{padding:24px}.address-heading{gap:12px;margin-bottom:16px}.address-actions{gap:8px 16px;align-items:center;margin-top:20px}.address-default{white-space:nowrap}.checkout-next{padding-top:24px;margin-top:24px;gap:16px}.checkout-addresses{gap:16px}.guest-auth-actions{gap:12px}.club-guest-benefits{gap:24px}.club-guest-art{margin-block:24px}.club-banner{padding:28px}.balance-card{padding:28px}.balance-head{padding-right:105px;align-items:flex-start}.balance-head>div{min-width:0}.points-star{flex-shrink:0}.balance-head p{max-width:none;line-height:1.6}.balance-mascot{right:24px;top:24px}.club-tabs{margin-block:20px}.club-tabs button{min-height:44px}.reward{gap:16px;padding:12px;margin-bottom:12px}.reward>div{min-width:0}.reward h3{line-height:1.5}.reward p{line-height:1.6}.club-rules{line-height:1.8;margin-top:24px}.club-rules strong{margin-bottom:8px}.empty{max-width:560px;margin-inline:auto;padding:48px 16px}.empty>h2{max-width:400px;margin:auto;line-height:1.35}.empty>.status-copy{margin-top:16px}.empty>.button{margin:24px auto 0;max-width:320px}.order-layout>.status-copy{line-height:1.7}.timeline li{gap:16px;min-height:80px}.timeline small{line-height:1.6}.timeline-dot{flex-shrink:0}.footer{width:calc(100% - 56px);margin-inline:auto;line-height:1.7;padding-block:24px}
.admin-main{padding:32px;min-width:0}.admin-heading{gap:24px;margin-bottom:24px}.admin-heading h1{line-height:1.2}.admin-heading p{line-height:1.7}.panel{padding:24px;margin-bottom:24px}.panel h2{margin-bottom:16px}.panel p.help{margin-block:12px;line-height:1.7}.editor-layout{gap:24px}.editor-layout>div,.editor-side{min-width:0}.admin-main .form-grid{gap:20px}.admin-main .field{margin-block:16px}.admin-main .form-grid>.field{margin:0}.admin-main .field textarea{min-height:112px;font-size:14px}.form-actions{margin-top:24px;padding-top:24px;gap:12px}.admin-main .button{min-height:44px}.admin-search{min-height:44px}.admin-toolbar{gap:12px}.stats{gap:16px;margin-bottom:24px}.stat{padding:20px}.stat small{line-height:1.5}.tag-row{margin-block:12px}.cover-caption{line-height:1.7;margin-block:12px 16px}.admin-main .availability{margin-block:24px}.admin-main .check-field{margin-block:16px}.admin-login .field input{min-height:48px}.admin-login>p{line-height:1.75}
@media(min-width:801px){.address-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:801px) and (max-width:1100px){.site-head{gap:12px;padding-inline:24px}.brand img{width:140px}.topnav{gap:0}.topnav button{font-size:12px;padding-inline:9px}.location{display:none}.cart-head{font-size:12px;padding-inline:12px}.header-tools{gap:8px}.product-detail{gap:28px}.cart-layout,.checkout-layout{gap:24px}}
@media(max-width:800px){.page{padding:24px 20px 40px;min-height:0}.page-heading{margin-bottom:24px}.page-heading h1{font-size:22px}.home-top{margin-bottom:16px}.home-top h1{font-size:22px}.categories{gap:0;padding-block:20px 24px}.category{font-size:11px;min-width:0}.category-icon{width:46px;height:46px}.products-grid,.catalog .products-grid{gap:16px}.product-card .card-body{padding:12px 10px 8px}.product-card h3{font-size:13px;min-height:2.9em}.card-bottom{padding-top:8px}.add-button{width:40px;height:40px}.section-title{margin:24px 0 16px}.section-title h2{font-size:18px}.club-invite{padding:18px 16px;margin-top:24px}.club-invite strong{font-size:15px}.club-invite small{line-height:1.6}.filters{padding-block:20px}.filter{min-height:40px;font-size:12px}.detail-page{padding:0 0 40px}.detail-page>.prelaunch-note{margin:20px}.product-detail{grid-template-columns:1fr;gap:0}.detail-content{padding:24px 20px 0}.detail-content h1{font-size:27px}.detail-price{margin:16px 0}.qualities{padding-block:24px;gap:12px}.quality{min-width:80px}.purchase{gap:16px}.product-gallery{padding:16px 20px}.cart-layout,.checkout-layout{grid-template-columns:1fr;gap:24px}.cart-item{grid-template-columns:72px minmax(0,1fr) auto;gap:12px;padding-block:16px}.cart-item>img{width:72px;height:88px}.cart-item h3{font-size:13px}.cart-item .small{font-size:11px}.cart-item .stepper{min-width:96px}.cart-item .stepper button{width:32px;height:36px}.summary-box{padding:20px}.coupon input{font-size:14px}.account{max-width:460px}.account h2{font-size:23px}.field input,.field select,.field textarea{font-size:16px}.profile-link{padding:18px 16px}.profile-link strong{font-size:14px}.preference small{max-width:250px}.balance-card{padding:24px 18px}.balance-head{padding-right:78px;gap:10px}.balance-mascot{height:94px;right:16px;top:24px}.balance-head strong{font-size:22px}.balance-head p{font-size:12px}.points-star{width:34px;height:34px}.progress{margin-top:24px}.club-banner{padding:24px 18px}.club-tabs button{font-size:12px}.club-rules{font-size:12px}.reward h3{font-size:14px}.reward img{width:52px;height:52px}.address-card,.address-form{padding:20px}.address-list{gap:16px}.empty{padding:36px 8px}.footer{width:calc(100% - 40px);margin:0 20px calc(88px + env(safe-area-inset-bottom));padding-block:20px;font-size:10px;gap:20px}.welcome-page{padding-top:24px}.welcome-page+.footer{margin-bottom:24px}.bottom-nav{padding-inline:8px}.feedback{bottom:calc(88px + env(safe-area-inset-bottom))}.admin-main{padding:28px 20px 40px}.admin-heading h1{font-size:26px}.panel{padding:20px;margin-bottom:20px}.stats{gap:12px}.stat{padding:16px}.admin-main .field input,.admin-main .field select,.admin-main .field textarea{font-size:16px}.admin-main .form-grid{gap:20px}.admin-heading p{font-size:13px}}
@media(max-width:350px){.page{padding-inline:16px}.detail-page{padding-inline:0}.detail-content{padding-inline:16px}.category{width:50px;font-size:10px}.category-icon{width:42px;height:42px}.products-grid,.catalog .products-grid{gap:12px}.product-card .card-body{padding-inline:8px}.product-card h3{font-size:12px}.cart-item{grid-template-columns:58px minmax(0,1fr) auto;gap:8px}.cart-item>img{width:58px;height:76px}.cart-item .stepper{min-width:90px}.cart-item .stepper button{width:30px}.summary-box{padding:16px}.club-guest-art{gap:12px;padding-inline:16px}.club-guest-art .hand{font-size:15px}.club-guest-mascot{height:145px}.balance-head{padding-right:62px}.balance-mascot{height:80px}.balance-head strong{font-size:20px}.reward{gap:10px}.footer{width:calc(100% - 32px);margin-inline:16px}}

.checkout-no-address{padding:24px;border:1px solid var(--line);background:var(--paper);border-radius:12px}.checkout-no-address h3{color:var(--wine);font-size:16px;line-height:1.5}.checkout-no-address p{color:var(--muted);font-size:13px;line-height:1.7;margin-top:12px}.checkout-no-address .button{margin-top:20px}.tag-row{grid-template-columns:148px minmax(0,1fr) 44px}.tag-row>button{height:44px;min-width:44px}.admin-main .field textarea{min-height:160px}.admin-main .small-btn{min-height:40px;display:inline-flex;align-items:center;justify-content:center}.form-actions .small-btn{min-height:44px}@media(max-width:600px){.tag-row{grid-template-columns:minmax(0,1fr) 44px}.admin-main .small-btn{min-height:44px}.checkout-no-address{padding:20px}}

.product-card h3{min-height:0}
.account .field input{background-color:#f3e3cc;border-color:#d4b795;color:var(--ink);box-shadow:none}
.account .field input::placeholder{color:#886b57;opacity:1}
.account .field input:focus{background-color:#f7e9d5;border-color:#a87967}
.account .field input:autofill{background-color:#f3e3cc;color:var(--ink)}
.account .field input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #f3e3cc inset;-webkit-text-fill-color:var(--ink);caret-color:var(--wine)}
.topnav button:hover{text-decoration:none}
:root{background:#f8eddd}
body{background:radial-gradient(ellipse at 10% 0%,#fff8ec 0%,transparent 60%),linear-gradient(140deg,#fcf2e3,#f3e3cc)}
.page .field input,.page .field select,.page .field textarea,.page .coupon input,.page .search-wrap input{background-color:#f3e3cc;border-color:#d4b795;color:var(--ink)}
.page .field input::placeholder,.page .field textarea::placeholder,.page .coupon input::placeholder,.page .search-wrap input::placeholder{color:#886b57;opacity:1}
.page .field input:focus,.page .field select:focus,.page .field textarea:focus,.page .coupon input:focus,.page .search-wrap input:focus{background-color:#f7e9d5;border-color:#a87967}
.page input[type=radio]{appearance:none;-webkit-appearance:none;width:18px;height:18px;flex-shrink:0;border:1px solid #a87967;border-radius:50%;background:#f3e3cc;cursor:pointer}
.page input[type=radio]:checked{border-color:var(--wine);background:radial-gradient(circle,var(--wine) 0 4px,#f3e3cc 4.5px)}
@media(forced-colors:active){.page input[type=radio]{appearance:auto}}
.password-control{position:relative;display:block;min-width:0}
main[tabindex="-1"]:focus{outline:none}
.password-control input{padding-right:78px}
.password-toggle{position:absolute;right:4px;top:4px;min-width:68px;height:40px;border:0;border-radius:5px;background:transparent;color:var(--wine);font-size:12px;font-weight:650}
.password-toggle:active{transform:none}
.cart-layout>*,.checkout-layout>*{min-width:0}
@media(max-width:800px){.cart-layout,.checkout-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:800px){.search-wrap input,.coupon input{font-size:16px}.page input{scroll-margin-block:24px 110px}.item-end .icon-button{width:44px;height:44px}.add-button{width:44px;height:44px}}
