.shop-hd{border-bottom:var(--rule) solid var(--line);background:var(--surface);position:sticky;top:0;z-index:20}.shop-hd__row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-s);min-height:4rem}.shop-hd__brand{font-weight:800;font-size:var(--step-1);letter-spacing:-.02em;color:var(--ink)}.shop-hd__nav{display:flex;align-items:center;gap:var(--space-m)}.shop-hd__nav a{font-weight:620;color:var(--ink-2)}.shop-hd__nav a[aria-current=page]{color:var(--red-deep)}.shop-hd__cart{position:relative;display:inline-flex;align-items:center;gap:.4rem}.shop-hd__badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.4rem;height:1.4rem;padding:0 .4rem;font-size:var(--step--1);font-weight:720;line-height:1;color:#fff;background:var(--red);border-radius:999px}.shop-main{padding-block:var(--space-xl) var(--space-2xl)}.shop-ft{border-top:var(--rule) solid var(--line);background:var(--surface)}.shop-ft__row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-s);min-height:3.5rem;font-size:var(--step--1);color:var(--muted)}.shop-ft__mark{font-weight:700;letter-spacing:.04em;color:var(--ink-2)}.shop-head{margin-bottom:var(--space-l)}.shop-head h1{font-size:var(--step-3)}.shop-head p{margin-top:.5rem;color:var(--ink-2)}.shop-search{display:flex;align-items:center;gap:var(--space-2xs);flex-wrap:wrap;margin-bottom:var(--space-l)}.shop-search input{flex:1 1 16rem;min-height:48px;font:inherit;color:var(--ink);background:var(--surface);border:var(--rule) solid var(--line-strong);border-radius:var(--radius);padding:.6rem .9rem}.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-m)}.prod__img{width:100%;height:auto;aspect-ratio:1 / 1;object-fit:contain;background:#fff;border-radius:var(--radius);margin-bottom:.3rem}.shop-pager{display:flex;align-items:center;gap:var(--space-2xs);flex-wrap:wrap;margin-top:var(--space-xl);padding-top:var(--space-m);border-top:var(--rule) solid var(--line)}.shop-pager__n,.shop-pager__cur{min-width:44px;min-height:44px;display:grid;place-items:center;padding:.4rem .7rem;border-radius:var(--radius);font-weight:640;font-variant-numeric:tabular-nums;border:var(--rule) solid var(--line-strong)}.shop-pager__n:hover{border-color:var(--red);color:var(--red-deep)}.shop-pager__cur{background:var(--red);border-color:var(--red);color:#fff}.shop-pager__of{margin-inline-start:auto;font-size:var(--step--1);color:var(--muted)}.prod{display:flex;flex-direction:column;gap:.5rem;padding:var(--space-m);background:var(--surface);border:var(--rule) solid var(--line);border-radius:var(--radius-lg)}.prod__cat{font-size:var(--step--1);color:var(--muted)}.prod__title{font-weight:720;font-size:var(--step-0);line-height:1.3}.prod__price{font-weight:780;font-size:var(--step-1);color:var(--ink)}.prod__price small{font-weight:600;font-size:var(--step--1);color:var(--muted)}.prod__foot{margin-top:auto;padding-top:.5rem}.prod__oos{font-weight:640;color:var(--muted)}.prod__note{font-size:var(--step--1);color:var(--muted)}.cart-line{display:grid;grid-template-columns:1fr auto;gap:var(--space-s) var(--space-m);align-items:center;padding:var(--space-m) 0;border-bottom:var(--rule) solid var(--line)}.cart-line__item{display:flex;align-items:center;gap:var(--space-s)}.cart-line__img{width:64px;height:64px;flex:0 0 auto;object-fit:contain;background:#fff;border:var(--rule) solid var(--line);border-radius:var(--radius)}.cart-line__title{font-weight:700}.cart-line__meta{font-size:var(--step--1);color:var(--muted)}.cart-line__ctrls{display:flex;align-items:center;gap:var(--space-s);flex-wrap:wrap;justify-content:flex-end}.cart-line__sub{font-weight:780;min-width:6ch;text-align:right}.qty{display:inline-flex;align-items:center;gap:.4rem}.qty input{width:4rem;min-height:44px;text-align:center;font:inherit;font-variant-numeric:tabular-nums;border:var(--rule) solid var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink);padding:.3rem}.btn--sm{min-height:44px;padding:.5rem .9rem;font-size:var(--step--1)}.btn--link{background:transparent;border-color:transparent;color:var(--red-deep);min-height:44px;padding:.5rem .6rem;text-decoration:underline}.btn--link:hover{background:transparent;color:var(--red)}.cart-sum{display:grid;gap:.5rem;margin-top:var(--space-l);padding:var(--space-m);background:var(--red-050);border:var(--rule) solid var(--line);border-radius:var(--radius-lg)}.cart-sum__row{display:flex;justify-content:space-between;gap:var(--space-s)}.cart-sum__row--total{font-weight:820;font-size:var(--step-1);border-top:var(--rule) solid var(--line);padding-top:.5rem}.cart-actions{display:flex;flex-wrap:wrap;gap:var(--space-s);margin-top:var(--space-l)}.empty{padding:var(--space-xl) 0;text-align:center;color:var(--ink-2)}.notice{padding:var(--space-s) var(--space-m);border-radius:var(--radius);border:var(--rule) solid var(--line);margin-bottom:var(--space-m)}.notice--warn{background:#fff7ed;border-color:#fed7aa;color:#7c2d12}.notice--err{background:#fef2f2;border-color:#fecaca;color:#7f1d1d}.notice--ok{background:#f0fdf4;border-color:#bbf7d0;color:#14532d}.form{display:grid;gap:var(--space-m)}.field{display:grid;gap:.35rem}.field>label{font-weight:640;font-size:var(--step--1)}.field input,.field textarea,.field select{min-height:48px;font:inherit;color:var(--ink);background:var(--surface);border:var(--rule) solid var(--line-strong);border-radius:var(--radius);padding:.65rem .8rem}.field textarea{min-height:5.5rem;resize:vertical}.field--row{grid-template-columns:1fr 1fr;gap:var(--space-s)}@media (max-width: 560px){.field--row{grid-template-columns:1fr}}.radio-row{display:flex;gap:var(--space-m);flex-wrap:wrap}.radio{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border:var(--rule) solid var(--line-strong);border-radius:var(--radius);background:var(--surface);cursor:pointer}.hint{font-size:var(--step--1);color:var(--muted)}.order-card{padding:var(--space-l);background:var(--surface);border:var(--rule) solid var(--line);border-radius:var(--radius-lg)}.order-lines{margin:var(--space-m) 0}.order-lines .cart-line{grid-template-columns:1fr auto}.kv{display:grid;grid-template-columns:auto 1fr;gap:.35rem var(--space-m)}.kv dt{color:var(--muted)}.kv dd{font-weight:620}.status-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .8rem;border-radius:999px;background:var(--red-050);color:var(--red-deep);font-weight:680;font-size:var(--step--1)}
