.shop,.shop-overlay,.shop-toast,.shop-fab{--sfg:var(--shop-fg,var(--shop-auto-fg,CanvasText));--sbg:var(--shop-bg,var(--shop-auto-bg,Canvas));--sa:var(--shop-accent,var(--shop-auto-accent,var(--sfg)));--soa:var(--shop-on-accent,var(--shop-auto-on-accent,var(--sbg)));--shop-radius-r:var(--shop-radius,12px);--shop-danger-c:var(--shop-danger,#d92d20)}.shop{--shop-border:color-mix(in srgb, currentColor 14%, transparent);--shop-soft:color-mix(in srgb, currentColor 5%, transparent);--shop-muted-color:color-mix(in srgb, currentColor 64%, transparent);font:inherit;line-height:1.5}.shop *,.shop :before,.shop :after{box-sizing:border-box}.shop h1{margin:0 0 24px;font-size:clamp(1.75rem,1.2rem + 2vw,2.5rem);font-weight:700;line-height:1.15}.shop h2{margin:0 0 12px;font-size:1.125rem;font-weight:650}.shop img{max-width:100%;display:block}.shop-page{max-width:1200px;margin:0 auto;padding:clamp(32px,6vw,64px) 20px 80px}.shop-narrow{max-width:760px}.shop-page-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-bottom:28px;display:flex}.shop-page-head h1{margin:0}.shop-muted{color:var(--shop-muted-color)}.shop-error{color:var(--shop-danger-c);font-size:.875rem}.shop-error ul{margin:4px 0 0;padding-inline-start:18px}.shop-notice{border-radius:calc(var(--shop-radius-r) - 4px);background:var(--shop-soft);padding:10px 14px;font-size:.9375rem}.shop-empty{justify-items:start;gap:16px;padding:48px 0;display:grid}.shop-button{border:1px solid var(--sa);background:var(--sa);min-height:46px;color:var(--soa);font:inherit;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 22px;font-weight:600;text-decoration:none;transition:opacity .15s,transform .15s;display:inline-flex}.shop-button:hover{opacity:.9}.shop-button:active{transform:translateY(1px)}.shop-button:focus-visible,.shop-link:focus-visible,.shop-icon-button:focus-visible,.shop-stepper button:focus-visible{outline:2px solid var(--sa);outline-offset:2px}.shop-button[disabled],.shop-button[aria-disabled=true]{opacity:.45;cursor:not-allowed;pointer-events:none}.shop-button-quiet{color:inherit;border-color:var(--shop-border);background:0 0}.shop-button-small{min-height:38px;padding:0 14px;font-size:.875rem}.shop-button-wide{width:100%}.shop-link{font:inherit;color:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.shop-icon-button{border:1px solid var(--shop-border);width:40px;height:40px;color:inherit;cursor:pointer;background:0 0;border-radius:999px;font-size:1.5rem;line-height:1}.shop-tabs{flex-wrap:wrap;gap:8px;display:flex}.shop-tabs a{border:1px solid var(--shop-border);color:inherit;border-radius:999px;padding:8px 14px;font-size:.9375rem;text-decoration:none}.shop-tabs a[aria-current=page]{background:var(--sa);border-color:var(--sa);color:var(--soa)}.shop-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:clamp(16px,2.5vw,32px);margin:0;padding:0;list-style:none;display:grid}@media (max-width:560px){.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.shop-card-foot{flex-direction:column;align-items:stretch}.shop-card-foot .shop-button{width:100%}}.shop-card{align-content:start;gap:12px;display:grid}.shop-card-link{color:inherit;gap:12px;text-decoration:none;display:grid}.shop-card-image,.shop-product-image,.shop-line-image{aspect-ratio:4/5;-o-object-fit:cover;object-fit:cover;border-radius:var(--shop-radius-r);background:var(--shop-soft);width:100%;display:block}.shop-card-link:hover .shop-card-image{opacity:.92}.shop-card-title{font-weight:600}.shop-card-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.shop-price{font-variant-numeric:tabular-nums;align-items:baseline;gap:8px;display:inline-flex}.shop-crumbs{margin-bottom:20px;font-size:.9375rem}.shop-crumbs a{color:var(--shop-muted-color)}.shop-product{gap:clamp(24px,5vw,64px);display:grid}@media (min-width:860px){.shop-product{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start}.shop-product-info{position:sticky;top:96px}}.shop-gallery{gap:12px;display:grid}.shop-thumbs{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.shop-thumbs img{aspect-ratio:1;-o-object-fit:cover;object-fit:cover;border-radius:calc(var(--shop-radius-r) - 4px)}.shop-product-info h1{margin-bottom:12px}.shop-product-price{margin:0 0 20px;font-size:1.375rem}.shop-description{color:var(--shop-muted-color);margin-top:28px}.shop-description p{margin:0 0 12px}.shop-buy{gap:16px;display:grid}.shop-buy-row{align-items:end;gap:12px;display:flex}.shop-buy-row .shop-button{flex:1}.shop-field{gap:6px;font-size:.875rem;font-weight:500;display:grid}.shop-field-narrow{width:96px}.shop-field input,.shop-field select,.shop-field textarea,.shop-code input{border:1px solid var(--shop-border);border-radius:calc(var(--shop-radius-r) - 4px);width:100%;min-height:46px;color:inherit;font:inherit;background:0 0;padding:10px 14px;font-weight:400}.shop-field select option{color:initial}.shop-field textarea{min-height:auto}.shop-field input:focus,.shop-field select:focus,.shop-field textarea:focus,.shop-code input:focus{outline:2px solid var(--sa);outline-offset:0;border-color:#0000}.shop-field[data-invalid] input{border-color:var(--shop-danger-c)}.shop-form{gap:28px;display:grid}.shop-form fieldset{border:0;gap:14px;margin:0;padding:0;display:grid}.shop-form legend{margin-bottom:14px;padding:0;font-size:1.0625rem;font-weight:650}.shop-row{gap:14px;display:grid}@media (min-width:560px){.shop-row{grid-template-columns:1fr 1fr}}.shop-choices{gap:10px;display:grid}.shop-choice{border:1px solid var(--shop-border);border-radius:calc(var(--shop-radius-r) - 4px);cursor:pointer;align-items:center;gap:12px;padding:14px 16px;display:flex}.shop-choice:has(input:checked){border-color:var(--sa);box-shadow:inset 0 0 0 1px var(--sa)}.shop-choice[data-disabled]{opacity:.5;cursor:not-allowed}.shop-choice input{accent-color:var(--sa)}.shop-choice>span{flex:1;display:grid}.shop-choice small{font-size:.8125rem}.shop-code{gap:8px;display:flex}.shop-columns{align-items:start;gap:32px;display:grid}@media (min-width:920px){.shop-columns{grid-template-columns:minmax(0,1fr) 380px}.shop-columns>.shop-panel{position:sticky;top:96px}}.shop-panel{border:1px solid var(--shop-border);border-radius:var(--shop-radius-r);background:var(--shop-soft);gap:16px;padding:24px;display:grid}.shop-lines{margin:0;padding:0;list-style:none;display:grid}.shop-line{border-bottom:1px solid var(--shop-border);grid-template-columns:72px minmax(0,1fr) auto;gap:14px;padding:16px 0;display:grid}.shop-line-image{aspect-ratio:1;width:72px}.shop-line-body{align-content:start;gap:4px;display:grid}.shop-line-title{color:inherit;font-weight:600;text-decoration:none}.shop-line-price{font-variant-numeric:tabular-nums}.shop-stepper{align-items:center;gap:10px;margin-top:6px;display:flex}.shop-stepper button:not(.shop-link){border:1px solid var(--shop-border);width:32px;height:32px;color:inherit;font:inherit;cursor:pointer;background:0 0;border-radius:999px}.shop-stepper button[disabled]{opacity:.4;cursor:not-allowed}.shop-stepper .shop-link{margin-inline-start:8px;font-size:.875rem}.shop-summary{gap:10px;margin:0;padding:0;list-style:none;display:grid}.shop-summary li,.shop-totals div{justify-content:space-between;gap:16px;display:flex}.shop-summary li>span:last-child,.shop-totals dd{font-variant-numeric:tabular-nums;white-space:nowrap}.shop-totals{border-top:1px solid var(--shop-border);gap:8px;margin:0;padding-top:12px;display:grid}.shop-totals dd{margin:0}.shop-total{padding-top:8px;font-size:1.125rem;font-weight:700}.shop-status{flex-wrap:wrap;align-items:center;gap:10px;margin:0;display:flex}.shop-badge{background:var(--shop-soft);border:1px solid var(--shop-border);border-radius:999px;padding:4px 10px;font-size:.8125rem;font-weight:600;display:inline-block}.shop-badge[data-status=confirmed],.shop-badge[data-status=shipped],.shop-badge[data-status=delivered]{background:var(--sa);border-color:var(--sa);color:var(--soa)}.shop-address{margin:0}.shop-orders{margin:0;padding:0;list-style:none;display:grid}.shop-orders li{border-bottom:1px solid var(--shop-border);justify-content:space-between;align-items:center;gap:16px;padding:14px 0;display:flex}.shop-pay{max-width:420px}.shop-pay-total{margin:0;font-size:2rem;font-weight:700}html.shop-locked{overflow:hidden}.shop-overlay{z-index:2147483000;background:#0006;justify-content:flex-end;animation:.18s ease-out shop-fade;display:flex;position:fixed;inset:0}.shop-drawer{background:var(--sbg);width:min(440px,100%);height:100%;color:var(--sfg);outline:none;flex-direction:column;gap:8px;padding:20px 24px;animation:.22s cubic-bezier(.2,.8,.2,1) shop-slide;display:flex;overflow-y:auto;box-shadow:-12px 0 40px #0000002e}[dir=rtl] .shop-drawer{animation-name:shop-slide-rtl}.shop-drawer-head{justify-content:space-between;align-items:center;display:flex}.shop-drawer-head h2{margin:0}.shop-drawer .shop-lines{flex:1;align-content:start}.shop-drawer-foot{border-top:1px solid var(--shop-border);justify-items:center;gap:12px;padding-top:16px;display:grid}.shop-drawer-foot .shop-button{width:100%}.shop-sum{justify-content:space-between;width:100%;font-size:1.0625rem;display:flex}.shop-toast{z-index:2147483001;inset-inline-start:50%;pointer-events:none;max-width:calc(100% - 32px);position:fixed;bottom:24px;transform:translate(-50%)}[dir=rtl] .shop-toast{transform:translate(50%)}.shop-toast:not(:empty){background:var(--sfg);color:var(--sbg);border-radius:999px;padding:12px 18px;font-size:.9375rem;animation:.18s ease-out shop-fade;box-shadow:0 10px 30px #0003}.shop-fab{z-index:2147482999;inset-inline-end:20px;background:var(--sa);width:56px;height:56px;color:var(--soa);cursor:pointer;border:0;border-radius:999px;place-items:center;display:grid;position:fixed;bottom:20px;box-shadow:0 10px 30px #0003}.shop-fab-count{top:-4px;background:var(--sbg);min-width:22px;height:22px;color:var(--sfg);border:2px solid var(--sa);border-radius:999px;place-items:center;padding:0 6px;font-size:.75rem;font-weight:700;display:grid;position:absolute;inset-inline-end:-4px}@keyframes shop-fade{0%{opacity:0}}@keyframes shop-slide{0%{opacity:0;transform:translate(24px)}}@keyframes shop-slide-rtl{0%{opacity:0;transform:translate(-24px)}}[dir=rtl] .shop-overlay{justify-content:flex-start}@media (prefers-reduced-motion:reduce){.shop-overlay,.shop-drawer,.shop-toast:not(:empty){animation:none}}
