.shop-bar{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.shop-bar .sys-tabs{flex:1;margin:0}.shop-cats{scrollbar-width:none;gap:.4rem;margin:0 -.1rem;padding:.1rem 0 .2rem;display:flex;overflow-x:auto}.shop-cats::-webkit-scrollbar{display:none}.shop-cat{border:1px solid var(--sys-line-dim);min-height:34px;font-family:var(--sys-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--sys-ink-2);background:var(--sys-cell);border-radius:2px;flex:none;align-items:center;padding:0 .8rem;font-size:.68rem;text-decoration:none;transition:background-color .16s,color .16s,border-color .16s;display:inline-flex}.shop-cat:hover{border-color:var(--sys-shop);color:var(--sys-ink)}.shop-cat[aria-current=true]{background:var(--sys-shop);border-color:var(--sys-shop);color:var(--sys-fill-ink)}.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:0;padding:0;list-style:none;display:grid}@media (min-width:480px){.shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.shop-grid--home{grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width:480px){.shop-grid--home{grid-template-columns:repeat(4,minmax(0,1fr))}}.shop-card{border:1px solid var(--sys-line-dim);border-bottom:2px solid var(--sys-shop);background:var(--sys-pane-2,var(--sys-cell));height:100%;color:inherit;flex-direction:column;text-decoration:none;transition:transform .16s,box-shadow .16s,border-color .16s;display:flex;position:relative}.shop-card:hover{border-color:var(--sys-shop);box-shadow:0 0 16px -6px var(--sys-shop)}.shop-card:active{transform:scale(.985)}.shop-card-photo{aspect-ratio:1;background:var(--sys-shop-soft);position:relative;overflow:hidden}.shop-card-photo img{object-fit:cover;width:100%;height:100%;display:block}.shop-card-photo .sys-art{background-color:var(--sys-shop);opacity:.55;position:absolute;inset:22%}.shop-card-chip{position:absolute;top:.4rem;left:.4rem}.shop-card-out{background:color-mix(in srgb, var(--sys-bg) 55%, transparent);place-items:center;display:grid;position:absolute;inset:0}.shop-card-body{flex-direction:column;flex:1;gap:.15rem;padding:.55rem .6rem .65rem;display:flex}.shop-card-brand{font-family:var(--sys-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--sys-ink-3);font-size:.6rem}.shop-card-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.92rem;font-weight:600;line-height:1.2;display:-webkit-box;overflow:hidden}.shop-card-price{font-family:var(--sys-mono);color:var(--sys-shop-ink);margin-top:auto;padding-top:.25rem;font-size:.95rem}.shop-chip{font-family:var(--sys-mono);letter-spacing:.12em;text-transform:uppercase;background:var(--sys-shop);color:var(--sys-fill-ink);align-items:center;padding:.12rem .45rem;font-size:.58rem;display:inline-flex}.shop-chip--out{background:var(--sys-ink-3)}.shop-detail-photo{aspect-ratio:1;background:var(--sys-shop-soft);border-bottom:2px solid var(--sys-shop);margin:-1rem -.95rem .9rem;position:relative;overflow:hidden}.shop-detail-photo img{object-fit:cover;width:100%;height:100%;display:block}.shop-detail-photo .sys-art{background-color:var(--sys-shop);opacity:.5;position:absolute;inset:25%}.shop-detail-name{font-family:var(--sys-display);letter-spacing:.04em;margin:.35rem 0 .2rem;font-size:1.15rem;line-height:1.25}.shop-detail-price{font-family:var(--sys-mono);color:var(--sys-shop-ink);font-size:1.5rem}.shop-desc{flex-direction:column;gap:.6rem;display:flex}.shop-desc ul{margin:0;padding-left:1.1rem}.shop-desc li{margin:.15rem 0}.shop-qty{border:1px solid var(--sys-line-dim);background:var(--sys-cell);align-items:stretch;display:inline-flex}.shop-qty button{width:40px;min-height:40px;color:var(--sys-ink);font-family:var(--sys-mono);cursor:pointer;background:0 0;border:0;font-size:1.05rem}.shop-qty button:disabled{opacity:.35;cursor:default}.shop-qty output{min-width:2.2rem;font-family:var(--sys-mono);border-left:1px solid var(--sys-line-dim);border-right:1px solid var(--sys-line-dim);place-items:center;display:grid}.shop-buy{align-items:center;gap:.6rem;margin-top:1rem;display:flex}.shop-buy .sys-btn{flex:1}.shop-added{margin-top:.6rem}.shop-lines{margin:-.3rem 0 0;padding:0;list-style:none}.shop-line{border-bottom:1px solid var(--sys-line-dim);grid-template-columns:64px 1fr;gap:.7rem;padding:.75rem 0;display:grid}.shop-line:last-child{border-bottom:0}.shop-line-photo{object-fit:cover;border:1px solid var(--sys-line-dim);background:var(--sys-shop-soft);width:64px;height:64px;display:block}.shop-line-top{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.shop-line-name{color:inherit;font-weight:600;line-height:1.2;text-decoration:none}.shop-line-actions{justify-content:space-between;align-items:center;gap:.5rem;margin-top:.45rem;display:flex}.shop-remove{color:var(--sys-ink-3);font-family:var(--sys-mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:.3rem 0;font-size:.66rem}.shop-remove:hover{color:var(--sys-bad)}.shop-totals{gap:.35rem;margin:0;display:grid}.shop-totals>div{justify-content:space-between;gap:.5rem;display:flex}.shop-totals dt{color:var(--sys-ink-2)}.shop-totals dd{font-family:var(--sys-mono);margin:0}.shop-totals .is-total{border-top:1px solid var(--sys-line-dim);margin-top:.15rem;padding-top:.5rem;font-weight:700}.shop-totals .is-total dd{color:var(--sys-shop-ink);font-size:1.15rem}.shop-totals .is-discount dd{color:var(--sys-ok)}.shop-form{grid-template-columns:1fr 1fr;gap:0 .6rem;display:grid}.shop-form .sys-field{margin-bottom:.7rem}.shop-form .is-full{grid-column:1/-1}.shop-steps{grid-template-columns:repeat(4,1fr);gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.shop-step{font-family:var(--sys-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--sys-ink-3);flex-direction:column;gap:.35rem;font-size:.58rem;display:flex}.shop-step:before{content:"";background:var(--sys-line-dim);height:4px}.shop-step.is-done{color:var(--sys-ink-2)}.shop-step.is-done:before{background:var(--sys-shop);box-shadow:0 0 8px -2px var(--sys-shop)}.shop-step.is-now{color:var(--sys-shop-ink)}.shop-orders{margin:0;padding:0;list-style:none}.shop-order{border-bottom:1px solid var(--sys-line-dim);color:inherit;align-items:center;gap:.7rem;padding:.75rem 0;text-decoration:none;display:flex}.shop-orders li:last-child .shop-order{border-bottom:0}.shop-badge{background:var(--sys-shop);min-width:16px;height:16px;color:var(--sys-fill-ink);font-family:var(--sys-mono);text-align:center;border-radius:8px;padding:0 4px;font-size:.62rem;font-weight:700;line-height:16px;position:absolute;top:2px;right:2px}
