/* Shared by homepage and product pages; purchasing stays gated by configuration. */
.purchase-controls{display:grid;gap:16px;margin:28px 0}
.purchase-label{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:13px}
.purchase-label select,.bag-line select{font:inherit;color:inherit;background:var(--paper);border:1px solid var(--line);padding:10px 14px;border-radius:2px;min-height:44px}
.size-options{border:0;margin:0;padding:0;min-width:0}.size-options legend{padding:0;margin-bottom:12px;font-size:13px}
.size-buttons{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.size-buttons button{min-width:0;min-height:46px;padding:8px 2px;border:1px solid var(--line);border-radius:2px;background:transparent;color:var(--ink);font:500 14px/1.2 var(--font-2);cursor:pointer}
.size-buttons button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.size-buttons button:disabled{opacity:.4;cursor:not-allowed}
.purchase-price{font:500 27px/1.3 var(--font-1);min-height:35px}.purchase-price-note,.bag-note,.store-status{font:400 13px/1.6 var(--font-2);color:var(--color-4)}.purchase-price-note{margin-top:-10px}.store-status:empty{display:none}.store-status:not(:empty){border-left:2px solid var(--gold);padding-left:12px;color:var(--ink)}
.purchase-controls>.button,.bag-dialog>.button{display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;padding:14px 20px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:2px;font:500 14px/1.4 var(--font-2);cursor:pointer}
.purchase-controls>.button:disabled,.bag-dialog>.button:disabled{opacity:.45;cursor:not-allowed}
#nav .bag-toggle{flex:none;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:2px;background:transparent;color:var(--ink);font:400 13px/1.4 var(--font-2);cursor:pointer}
.bag-dialog{position:fixed;inset:0 0 0 auto;margin:0;width:min(480px,100%);height:100dvh;max-height:100dvh;max-width:100%;padding:28px;border:0;background:var(--paper);color:var(--ink);overflow:auto;overscroll-behavior:contain;box-sizing:border-box;font-family:var(--font-2)}
.bag-dialog::backdrop{background:#17181588}.bag-top{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:20px}.bag-top h2{margin:0;font:500 32px/1.15 var(--font-1);letter-spacing:-.03em}
.bag-close,.bag-remove{min-height:44px;padding:8px 0;border:0;background:transparent;color:inherit;font:400 13px/1.3 var(--font-2);text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.bag-line{display:grid;grid-template-columns:80px minmax(0,1fr);gap:18px;padding:22px 0;border-bottom:1px solid var(--line)}.bag-line img{width:80px;height:auto;aspect-ratio:3/4;object-fit:contain;background:#e7e7e4}.bag-line h3{font:600 18px/1.2 var(--font-1);margin:0 0 8px}.bag-line p{font-size:13px;line-height:1.5;margin:4px 0}.bag-line select{margin:8px 16px 0 0}.bag-total{font:500 22px/1.5 var(--font-1);margin-top:24px}.bag-dialog>.bag-note{margin-top:12px}.bag-dialog>.button{margin-top:24px}.bag-empty{padding:35px 0;font-size:15px}
.purchase-controls :focus-visible,.bag-dialog :focus-visible{outline:2px solid var(--ink);outline-offset:4px}
@media(max-width:1000px){#nav .nav__bar.site-header:has(.bag-toggle){gap:12px}#nav .nav__bar:has(.bag-toggle) .nav__logo{width:112px}#nav .nav__bar:has(.bag-toggle) .nav-disclosure{order:3}#nav .nav__bar:has(.bag-toggle) .nav__menu{gap:12px}#nav .bag-toggle{order:2;margin-left:auto}}
@media(max-width:550px){.bag-dialog{padding:20px}.size-buttons{gap:6px}.size-buttons button{font-size:13px}.bag-line{gap:14px}}
