html[data-hearing-size]{--hs-size: 1;font-size:calc(17px * var(--hs-size));-webkit-text-size-adjust:100%;scrollbar-gutter:stable}html[data-hearing-size=s]{--hs-size: .9}html[data-hearing-size=m]{--hs-size: 1}html[data-hearing-size=l]{--hs-size: 1.15}@media (min-width: 900px){html[data-hearing-size]{font-size:calc(16px * var(--hs-size))}}html[data-hearing-size] body{background:#faf8f4}.hs-page{--hs-bg: #faf8f4;--hs-card: #ffffff;--hs-line: #e6e2da;--hs-line-strong: #d3cfc6;--hs-text: #3b3833;--hs-sub: #8a867d;--hs-faint: #a29d93;--hs-num: #bcb9b1;--hs-chip-on: #f1eee8;--hs-check: #5c5850;--hs-box: #a9a59b;--hs-field-bg: #fdfcfa;--hs-placeholder: #b9b4aa;--hs-strong: #3b3833;--hs-alert: #c0713f;--hs-alert-soft: rgba(192, 113, 63, .18);--hs-alert-wide: rgba(192, 113, 63, .32);--hs-radius-card: 1rem;--hs-tap: 2.75rem;--hs-bar-h: 5.25rem;--hs-sans: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Meiryo", sans-serif;--hs-serif: "Hiragino Mincho ProN", "Yu Mincho", "Times New Roman", Georgia, serif;min-height:100vh;background:var(--hs-bg);color:var(--hs-text);font-family:var(--hs-sans);font-size:1rem;line-height:1.6}.hs-page.hs-has-bar{padding-bottom:calc(var(--hs-bar-h) + env(safe-area-inset-bottom))}:where(.hs-page) *,:where(.hs-page) *:before,:where(.hs-page) *:after{box-sizing:border-box}:where(.hs-page) :where(button,input,textarea){font:inherit;color:inherit}.hs-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hs-wrap{max-width:52rem;margin:0 auto;padding:0 1rem}.hs-topbar{display:flex;justify-content:flex-end;padding-top:.75rem}.hs-sizes{display:inline-flex;border:1px solid var(--hs-line-strong);border-radius:999px;background:var(--hs-card);padding:.1875rem}.hs-sizes button{min-width:var(--hs-tap);min-height:var(--hs-tap);border:0;background:transparent;border-radius:999px;color:var(--hs-sub);cursor:pointer;font-weight:600;font-size:.875rem}.hs-sizes button[aria-pressed=true]{background:var(--hs-chip-on);color:var(--hs-text);box-shadow:inset 0 0 0 1px var(--hs-line-strong)}.hs-hd{display:flex;align-items:center;gap:1rem;padding:.5rem 0 1.25rem}.hs-hd .hs-mark{width:4.5rem;height:4.5rem;flex:none}.hs-hd .hs-wm{display:block;width:11.5rem;max-width:100%}.hs-en{font-family:var(--hs-serif);font-weight:700;color:var(--hs-text);font-size:1.375rem;line-height:1.25;letter-spacing:.12em;margin:.5rem 0 0}.hs-ja{display:block;font-family:var(--hs-sans);font-weight:400;font-size:.875rem;line-height:1.6;color:var(--hs-sub);letter-spacing:.08em;margin-top:.25rem}@media (max-width: 520px){.hs-hd{flex-direction:column;align-items:flex-start;gap:.5rem}.hs-hd .hs-mark{width:3.75rem;height:3.75rem}.hs-hd .hs-en{font-size:1.5rem;letter-spacing:.1em}}@media (min-width: 900px){.hs-hd .hs-mark{width:6rem;height:6rem}.hs-hd .hs-wm{width:14rem}.hs-hd .hs-en{font-size:1.875rem}}.hs-lead{display:flex;flex-wrap:wrap;gap:.25rem 1rem;align-items:center;font-size:.875rem;color:var(--hs-sub);margin:0 0 1rem}.hs-req-badge{display:inline-flex;align-items:center;font-size:.75rem;font-weight:700;letter-spacing:.05em;color:#fff;background:var(--hs-alert);border-radius:999px;padding:.0625rem .5rem;line-height:1.5}.hs-grid{display:grid;grid-template-columns:1fr;gap:.875rem}@media (min-width: 900px){.hs-grid{grid-template-columns:1fr 1fr;gap:1rem}.hs-card.hs-w{grid-column:1 / -1}}.hs-card{background:var(--hs-card);border:1px solid var(--hs-line);border-radius:var(--hs-radius-card);padding:1rem 1rem 1.125rem;scroll-margin-top:1.5rem;scroll-margin-bottom:calc(var(--hs-bar-h) + 1rem)}.hs-card-h{margin:0 0 .75rem;font-size:1.0625rem;font-weight:700;line-height:1.4;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.hs-n{width:1.75rem;height:1.75rem;border-radius:50%;background:var(--hs-num);color:#fff;display:grid;place-items:center;font-size:.875rem;flex:none}.hs-t{flex:1 1 auto;min-width:0}.hs-nt{font-weight:400;font-size:.8125rem;color:var(--hs-faint)}.hs-sub-l{display:block;font-size:.875rem;color:var(--hs-sub);margin:0 0 .375rem;padding:0;font-weight:600}.hs-fieldset{border:0;margin:0;padding:0;min-width:0}.hs-part+.hs-part{margin-top:1rem}.hs-pair{display:grid;grid-template-columns:1fr;gap:1rem}.hs-pair .hs-part+.hs-part{margin-top:0}@media (min-width: 900px){.hs-pair{grid-template-columns:1fr 1fr}}.hs-opts{display:flex;flex-wrap:wrap;gap:.5rem}.hs-o{display:inline-flex;align-items:center;gap:.5rem;min-height:var(--hs-tap);border:1px solid var(--hs-line-strong);border-radius:999px;background:var(--hs-card);padding:.375rem 1rem .375rem .625rem;cursor:pointer;text-align:left;line-height:1.35;-webkit-tap-highlight-color:transparent;max-width:100%}.hs-bx{width:1.25rem;height:1.25rem;flex:none;border:1.5px solid var(--hs-box);border-radius:.375rem;display:grid;place-items:center;background:#fff}.hs-o.hs-single .hs-bx{border-radius:50%}.hs-bx svg{width:.875rem;height:.875rem;opacity:0}.hs-o[aria-pressed=true]{background:var(--hs-chip-on);border-color:var(--hs-box)}.hs-o[aria-pressed=true] .hs-bx{background:var(--hs-check);border-color:var(--hs-check)}.hs-o[aria-pressed=true] .hs-bx svg{opacity:1}.hs-o:focus-visible,.hs-sizes button:focus-visible,.hs-btn:focus-visible{outline:2px solid var(--hs-sub);outline-offset:2px}.hs-textarea,.hs-date{width:100%;border:1px solid var(--hs-line-strong);border-radius:.75rem;background:var(--hs-field-bg);padding:.75rem .875rem;line-height:1.7}.hs-textarea{display:block;min-height:9rem;resize:vertical}.hs-textarea.hs-tall{min-height:12rem}.hs-textarea.hs-other{min-height:6rem;margin-top:.625rem}.hs-date{min-height:var(--hs-tap);max-width:14rem}.hs-textarea:focus,.hs-date:focus{outline:none;border-color:var(--hs-box);box-shadow:0 0 0 3px #a9a59b40}:where(.hs-page) ::placeholder{color:var(--hs-placeholder)}.hs-date-card{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:.875rem}.hs-date-card label{font-weight:600;font-size:1rem;white-space:nowrap}@media (min-width: 900px){.hs-date-card{width:fit-content;padding-right:1.5rem;flex-wrap:nowrap}}.hs-card.hs-missing{border-color:var(--hs-alert);box-shadow:0 0 0 2px var(--hs-alert),0 0 0 6px var(--hs-alert-soft);animation-name:hs-flash-a;animation-duration:.5s;animation-timing-function:ease-in-out;animation-iteration-count:4;animation-direction:alternate}.hs-miss{display:flex;align-items:center;gap:.375rem;color:var(--hs-alert);font-weight:600;font-size:.875rem;margin:-.25rem 0 .625rem}.hs-miss:before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--hs-alert)}@keyframes hs-flash-a{0%{box-shadow:0 0 0 2px var(--hs-alert),0 0 0 6px var(--hs-alert-soft)}to{box-shadow:0 0 0 2px var(--hs-alert),0 0 0 10px var(--hs-alert-wide)}}@keyframes hs-flash-b{0%{box-shadow:0 0 0 2px var(--hs-alert),0 0 0 6px var(--hs-alert-soft)}to{box-shadow:0 0 0 2px var(--hs-alert),0 0 0 10px var(--hs-alert-wide)}}@media (prefers-reduced-motion: reduce){.hs-card.hs-missing{animation:none!important}}.hs-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.25rem 1rem;font-size:.8125rem;color:var(--hs-faint);padding:1.5rem 0;border-top:1px solid var(--hs-line);margin-top:1.5rem}.hs-bar{position:fixed;left:0;right:0;bottom:0;z-index:10;background:#faf8f4f5;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-top:1px solid var(--hs-line);padding:.625rem 0 calc(.75rem + env(safe-area-inset-bottom))}.hs-bar .hs-wrap{display:flex;align-items:center;gap:.75rem}.hs-msg{flex:1 1 auto;min-width:0;font-size:.875rem;color:var(--hs-sub);display:flex;align-items:center;gap:.5rem}.hs-dot{width:.625rem;height:.625rem;border-radius:50%;background:var(--hs-alert);flex:none}.hs-msg.hs-err{color:var(--hs-text);font-weight:600}.hs-btn{min-height:3.25rem;border-radius:.875rem;border:0;cursor:pointer;font-weight:700;padding:0 1.25rem;display:inline-flex;align-items:center;justify-content:center;gap:.375rem;white-space:nowrap}.hs-btn:disabled{opacity:.55;cursor:not-allowed}.hs-btn.hs-weak{background:transparent;color:var(--hs-sub);font-weight:600}.hs-btn.hs-weak svg{width:1.125rem;height:1.125rem}.hs-btn.hs-strong{background:var(--hs-strong);color:#fff;min-width:11rem;font-size:1.0625rem;letter-spacing:.08em}@media (max-width: 640px){.hs-bar .hs-wrap{flex-wrap:wrap;gap:.25rem .5rem}.hs-msg{flex:1 1 100%}.hs-msg:empty{display:none}.hs-btn.hs-weak{padding:0 .75rem}.hs-bar .hs-btn.hs-strong{flex:1 1 auto;min-width:0}}.hs-ov{position:fixed;top:0;right:0;bottom:0;left:0;background:#3b383359;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:20}.hs-dlg{background:var(--hs-card);border-radius:1.25rem;width:min(26rem,100%);padding:1.5rem 1.25rem 1.25rem}.hs-dlg p{margin:0 0 1.25rem;line-height:1.8}.hs-row{display:flex;justify-content:flex-end;gap:.5rem}.hs-center{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 1.25rem}.hs-center-card{max-width:30rem;width:100%;padding:2.5rem 1.5rem}.hs-center-card .hs-mark{width:5.5rem;height:5.5rem}.hs-center-card .hs-wm{width:12rem;display:block;margin:.75rem auto 0}.hs-center-card .hs-en{font-size:1.625rem;margin-top:1.5rem}.hs-center-card p{color:var(--hs-sub);line-height:1.9;margin:1rem 0 0}.hs-center-card .hs-center-note{font-size:.8125rem;color:var(--hs-faint)}:root{--shop-color-paper: #f7f5ef;--shop-color-paper-raise: #ffffff;--shop-color-ink: #20241d;--shop-color-forest: #3f5c43;--shop-color-ochre: #a9793c;--shop-color-danger: #b0392f}:root{--shop-role-page-bg: var(--shop-color-paper);--shop-role-card-bg: var(--shop-color-paper-raise);--shop-role-text-body: var(--shop-color-ink);--shop-role-text-muted: color-mix(in srgb, var(--shop-color-ink) 62%, transparent);--shop-role-text-faint: color-mix(in srgb, var(--shop-color-ink) 40%, transparent);--shop-role-divider: color-mix(in srgb, var(--shop-color-ink) 10%, transparent);--shop-role-accent: var(--shop-color-forest);--shop-role-accent-soft: color-mix(in srgb, var(--shop-color-forest) 10%, transparent);--shop-role-highlight: var(--shop-color-ochre);--shop-role-highlight-soft: color-mix(in srgb, var(--shop-color-ochre) 14%, transparent);--shop-role-danger: var(--shop-color-danger);--shop-role-danger-soft: color-mix(in srgb, var(--shop-color-danger) 10%, transparent)}*{box-sizing:border-box}body{margin:0;background:var(--shop-role-page-bg);color:var(--shop-role-text-body);font-family:system-ui,-apple-system,Hiragino Sans,Yu Gothic,sans-serif}a{color:inherit}.page-loading,.page-error{padding:3rem;text-align:center;color:var(--shop-role-text-muted)}.page-error{color:var(--shop-role-danger)}.section-title{margin:0 0 1rem;font-size:1.1rem}.empty-note{color:var(--shop-role-text-faint);font-size:.9rem}.badge-new,.badge-campaign{display:inline-block;margin-left:.5rem;padding:.1rem .5rem;border-radius:999px;background:var(--shop-role-highlight-soft);color:var(--shop-role-highlight);font-size:.7rem;font-weight:700;letter-spacing:.04em;vertical-align:middle}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:999px;padding:.7rem 1.5rem;font-size:.95rem;cursor:pointer;text-decoration:none;white-space:nowrap;flex-shrink:0}.btn-primary{background:var(--shop-role-accent);color:#fff}.btn-secondary{background:var(--shop-role-card-bg);color:var(--shop-role-text-body);border:1px solid var(--shop-role-divider)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem}.login-card{width:100%;max-width:360px;background:var(--shop-role-card-bg);border-radius:16px;padding:2rem;display:flex;flex-direction:column;gap:.9rem;box-shadow:0 8px 24px #0000000f}.login-card__eyebrow{margin:0;font-size:.8rem;letter-spacing:.08em;color:var(--shop-role-accent)}.login-card__title{margin:0 0 .5rem}.login-field{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;color:var(--shop-role-text-muted)}.login-field input{padding:.6rem .8rem;border-radius:8px;border:1px solid var(--shop-role-divider);font-size:1rem}.login-error{color:var(--shop-role-danger);font-size:.85rem;margin:0}.site-header{display:flex;align-items:center;gap:1.5rem;padding:1rem 2rem;background:var(--shop-role-card-bg);border-bottom:1px solid var(--shop-role-divider)}.site-header__logo{font-weight:700;text-decoration:none}.site-header__nav{display:flex;gap:1.2rem;flex:1}.site-header__nav a{text-decoration:none;color:var(--shop-role-text-muted);font-size:.9rem;padding-bottom:.2rem;border-bottom:2px solid transparent}.site-header__nav a.is-active{color:var(--shop-role-text-body);border-bottom-color:var(--shop-role-accent)}.site-header__cart{position:relative;text-decoration:none;color:var(--shop-role-text-muted);font-size:.9rem}.site-header__cart.is-active{color:var(--shop-role-accent)}.site-header__cart-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;margin-left:.3rem;border-radius:999px;background:var(--shop-role-danger);color:#fff;font-size:.75rem;font-weight:700;box-shadow:0 0 0 2px var(--shop-role-page-bg)}.site-header__logout{border:none;background:none;color:var(--shop-role-text-faint);cursor:pointer;font-size:.85rem}.impersonation-banner{display:flex;align-items:center;gap:12px;padding:10px 2rem;background:var(--shop-role-accent-soft);border-bottom:1px solid var(--shop-role-divider);font-size:.85rem;position:sticky;top:0;z-index:10}.impersonation-banner__icon{flex:none;width:22px;height:22px;border-radius:50%;background:var(--shop-role-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.impersonation-banner__text{color:var(--shop-role-text-body)}.impersonation-banner__text strong{font-weight:700}.impersonation-banner__time{color:var(--shop-role-text-muted)}.impersonation-banner__time.is-warning{color:var(--shop-role-highlight);font-weight:700}.impersonation-banner__error{color:var(--shop-role-danger)}.impersonation-banner__spacer{flex:1}.impersonation-banner__end{border:1px solid var(--shop-role-divider);background:var(--shop-role-card-bg);color:var(--shop-role-text-body);font-size:.82rem;padding:5px 14px;border-radius:999px;cursor:pointer}.impersonation-banner__end:hover{background:var(--shop-role-danger-soft);border-color:var(--shop-role-danger);color:var(--shop-role-danger)}.impersonation-banner__end:disabled{opacity:.6;cursor:not-allowed}.hero-slideshow{position:relative;min-height:280px;width:100%;overflow:hidden;background:var(--shop-role-accent-soft)}.hero-slideshow__slide{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;opacity:0;transition:opacity 1s ease}.hero-slideshow__slide.is-active{opacity:1}.page-content{max-width:1080px;margin:0 auto;padding:2.5rem 2rem}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.25rem}.product-card{display:flex;flex-direction:column;background:var(--shop-role-card-bg);border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;border:1px solid var(--shop-role-divider)}.product-card__link{display:flex;flex-direction:column;text-decoration:none;color:inherit}.product-card__photo{position:relative;aspect-ratio:1 / 1;background:var(--shop-role-accent-soft)}.product-card__photo img{width:100%;height:100%;object-fit:cover;display:block}.product-card__photo-empty{width:100%;height:100%;background:var(--shop-role-divider)}.product-card__body{padding:.75rem .9rem .9rem;display:flex;flex-direction:column;gap:.2rem}.product-card__category{margin:0;font-size:.72rem;color:var(--shop-role-text-faint)}.product-card__name-row{display:flex;align-items:baseline;gap:.35rem;flex-wrap:wrap}.product-card__name{margin:0;font-size:.95rem;font-weight:600}.rate-tag{font-size:.78rem;font-weight:700;color:var(--shop-role-accent)}.price-display{margin:.3rem 0 0;display:flex;align-items:baseline;gap:.5rem;font-weight:700}.price-display__list-price{font-weight:400;font-size:.85rem;color:var(--shop-role-danger);text-decoration:line-through;text-decoration-style:double}.price-display__customer-price{color:var(--shop-role-accent)}.quantity-stepper{display:flex;align-items:center;gap:.5rem;padding:0 .9rem .9rem}.quantity-stepper button{width:28px;height:28px;border-radius:50%;border:1px solid var(--shop-role-divider);background:var(--shop-role-card-bg);cursor:pointer;font-size:1rem;line-height:1}.quantity-stepper input{width:44px;text-align:center;border:1px solid var(--shop-role-divider);border-radius:6px;padding:.3rem;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.quantity-stepper input::-webkit-outer-spin-button,.quantity-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ranking-section{margin-bottom:3rem}.ranking-tabs{display:flex;gap:.5rem;margin-bottom:1.25rem}.ranking-tab{border:none;background:var(--shop-role-card-bg);border:1px solid var(--shop-role-divider);border-radius:999px;padding:.5rem 1.1rem;cursor:pointer;color:var(--shop-role-text-muted)}.ranking-tab.is-active{background:var(--shop-role-accent);border-color:var(--shop-role-accent);color:#fff}.lineup-section,.store-info-section,.featured-section{margin-bottom:3rem}.scroll-row-wrap{position:relative}.scroll-row{display:flex;gap:1.25rem;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:.4rem;scrollbar-width:none}.scroll-row::-webkit-scrollbar{display:none}.scroll-row .product-card{flex:none;width:200px;scroll-snap-align:start}.scroll-arrow{position:absolute;top:calc(50% - .6rem);transform:translateY(-50%);z-index:5;width:34px;height:34px;border-radius:50%;border:1px solid var(--shop-role-divider);background:var(--shop-role-card-bg);box-shadow:0 8px 24px #0000000f;cursor:pointer;font-size:.9rem}.scroll-arrow--prev{left:-17px}.scroll-arrow--next{right:-17px}@media (max-width: 720px){.scroll-arrow{display:none}}.contact-section{margin-bottom:3rem}.contact-person-list{display:flex;flex-direction:column;gap:1rem}.contact-name{margin:0 0 .4rem;color:var(--shop-role-text-faint);font-size:.85rem}.contact-buttons{display:flex;gap:.75rem}.store-info{display:grid;grid-template-columns:auto 1fr;gap:.5rem 1.5rem;margin:0}.store-info dt{color:var(--shop-role-text-faint);font-size:.85rem}.store-info dd{margin:0}.shop-layout{display:grid;grid-template-columns:220px 1fr;gap:2rem;align-items:start}.shop-sidebar{display:flex;flex-direction:column;gap:1rem}.category-list{display:flex;flex-direction:column;gap:.25rem}.category-list__item{text-align:left;border:none;background:none;padding:.5rem .6rem;border-radius:8px;cursor:pointer;color:var(--shop-role-text-muted);font-size:.9rem}.category-list__item.is-active{background:var(--shop-role-accent-soft);color:var(--shop-role-accent);font-weight:600}.catalog-pdf-banner{display:block;padding:.9rem 1rem;border-radius:10px;background:var(--shop-role-highlight-soft);color:var(--shop-role-highlight);text-decoration:none;font-size:.85rem;font-weight:600;text-align:center}@media (max-width: 720px){.shop-layout{grid-template-columns:1fr}}.back-link{display:inline-flex;align-items:center;border:none;background:none;padding:0;margin-bottom:1.5rem;font-size:.9rem;color:var(--shop-role-text-muted);cursor:pointer}.back-link:hover{color:var(--shop-role-text-body)}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:3rem}.product-detail__main-photo{aspect-ratio:1 / 1;border-radius:12px;overflow:hidden;background:var(--shop-role-accent-soft)}.product-detail__main-photo img{width:100%;height:100%;object-fit:cover;display:block}.product-detail__thumbnails{display:flex;gap:.5rem;margin-top:.75rem}.product-detail__thumbnail{width:56px;height:56px;border-radius:8px;overflow:hidden;border:2px solid transparent;padding:0;cursor:pointer}.product-detail__thumbnail.is-active{border-color:var(--shop-role-accent)}.product-detail__thumbnail img{width:100%;height:100%;object-fit:cover;display:block}.product-detail__name{display:flex;align-items:center;margin:.3rem 0 1rem}.product-detail__description{color:var(--shop-role-text-muted);line-height:1.7;white-space:pre-wrap}.product-detail__variations{width:100%;border-collapse:collapse;margin:1.5rem 0}.product-detail__variations td{padding:.6rem 0;border-bottom:1px solid var(--shop-role-divider)}.product-detail__variations td:first-child{color:var(--shop-role-text-muted)}.product-detail__characteristics{margin-top:2rem;display:flex;flex-direction:column;align-items:center}@media (max-width: 720px){.product-detail{grid-template-columns:1fr}}.product-detail__variations tr{cursor:pointer}.product-detail__variations tr.is-selected{background:var(--shop-role-accent-soft)}.product-detail__variation-radio{display:flex;align-items:center;gap:.5rem;cursor:pointer}.product-detail__add-to-cart{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.quantity-stepper__add{margin-left:.5rem}.cart-table{width:100%;border-collapse:collapse;margin:1.5rem 0}.cart-table td{padding:.75rem .5rem;border-bottom:1px solid var(--shop-role-divider);vertical-align:middle}.cart-table__photo{width:64px}.cart-table__photo img,.cart-table__photo .product-card__photo-empty{width:56px;height:56px;object-fit:cover;border-radius:8px;display:block}.cart-table__name{margin:0;font-weight:600}.cart-table tr.is-unavailable{opacity:.6}.cart-table input[type=number]{width:60px;padding:.4rem;border-radius:6px;border:1px solid var(--shop-role-divider);text-align:center;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.cart-table input[type=number]::-webkit-outer-spin-button,.cart-table input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.cart-summary{display:flex;align-items:center;justify-content:flex-end;gap:1.5rem}.cart-summary__total{font-size:1.2rem;font-weight:700}.cart-layout{display:grid;grid-template-columns:1fr 340px;gap:2.5rem;align-items:start;margin:1.5rem 0}.cart-item-row{display:flex;gap:1rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--shop-role-divider)}.cart-item-row:last-child{border-bottom:none}.cart-item-row.is-unavailable{opacity:.6}.cart-item-photo,.cart-item-photo img,.cart-item-photo .product-card__photo-empty{width:64px;height:64px;object-fit:cover;border-radius:8px;display:block;flex:none}.cart-item-info{flex:1;min-width:0}.cart-item-info .product-card__name-row{margin-bottom:.15rem}.cart-item-qty{flex:none}.cart-item-qty input[type=number]{width:50px;padding:.35rem;border-radius:6px;border:1px solid var(--shop-role-divider);text-align:center;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.cart-item-qty input[type=number]::-webkit-outer-spin-button,.cart-item-qty input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.cart-item-price{flex:none;width:110px;text-align:right}.cart-item-remove{flex:none}.cart-summary-card{background:var(--shop-role-page-bg);border:1px solid var(--shop-role-divider);border-radius:8px;padding:1.25rem;position:sticky;top:1.5rem}.cart-summary-card h2{margin:0 0 .9rem;font-size:1rem}.cart-summary-card__row{display:flex;justify-content:space-between;font-size:.85rem;color:var(--shop-role-text-muted);padding:.25rem 0}.cart-summary-card__total{display:flex;justify-content:space-between;font-size:1.1rem;font-weight:700;padding-top:.75rem;margin-top:.5rem;border-top:1px solid var(--shop-role-divider)}.cart-notes{width:100%;margin-top:.9rem;border:1px solid var(--shop-role-divider);border-radius:6px;padding:.5rem .6rem;font-size:.82rem;font-family:inherit;background:var(--shop-role-card-bg);color:var(--shop-role-text-body);resize:vertical}.cart-summary-card .btn-primary{width:100%;margin-top:.9rem}@media (max-width: 720px){.cart-layout{grid-template-columns:1fr}.cart-summary-card{position:static}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:100}.modal-card{background:var(--shop-role-card-bg);border-radius:16px;padding:2rem;max-width:420px;width:100%;display:flex;flex-direction:column;gap:1.5rem}.modal-card__message{margin:0;font-size:1rem}.modal-card__actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-end}.status-badge{display:inline-flex;align-items:center;padding:.2rem .7rem;border-radius:999px;font-size:.78rem;font-weight:600;background:var(--shop-role-divider);color:var(--shop-role-text-muted)}.status-badge--received{background:var(--shop-role-accent-soft);color:var(--shop-role-accent)}.status-badge--confirmed{background:var(--shop-role-accent);color:#fff}.status-badge--shipped{background:var(--shop-role-highlight-soft);color:var(--shop-role-highlight)}.status-badge--paid{background:var(--shop-role-highlight);color:#fff}.status-badge--cancelled{background:var(--shop-role-danger-soft);color:var(--shop-role-danger)}
