
.shopbar{display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap;
  padding:16px 0 14px;border-bottom:1px solid #DDD6C6}
.filters{display:flex;gap:22px;flex-wrap:wrap;align-items:center}
.fgroup{display:flex;gap:7px;flex-wrap:wrap;align-items:center}
.flab{font-family:'Roboto Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;
  color:#8A887F;margin-right:3px}
.sbtn{font-family:'Roboto Mono',monospace;font-size:11.5px;letter-spacing:.06em;padding:7px 15px;
  background:#fff;border:1px solid #DDD6C6;border-radius:2px;color:#3A3A36;cursor:pointer;
  transition:all .22s ease}
.sbtn:hover{border-color:#C9A227;color:#8F7016}
.sbtn.on{background:#0A0E18;border-color:#0A0E18;color:#E8D9A8}
.pack-tag{position:absolute;right:9px;bottom:9px;z-index:2;background:rgba(10,14,24,.88);
  color:#E8D9A8;font-family:'Roboto Mono',monospace;font-size:9px;letter-spacing:.11em;
  text-transform:uppercase;padding:4px 8px;border-radius:2px;border:1px solid rgba(201,162,39,.42)}
.packline{margin-top:7px;font-size:11px;color:#6B6A64;letter-spacing:.01em}
.packline::before{content:'B8 ';color:#C9A227}
.chip{font-family:'Roboto Mono',monospace;font-size:11.5px;letter-spacing:.06em;padding:7px 13px;
  border:1px solid #DDD6C6;background:#FBF9F4;color:#4A4E56;border-radius:2px;cursor:pointer;
  transition:all .2s ease}
.chip:hover{border-color:#C9A227;color:#8F7016}
.chip.on{background:#0A0E18;border-color:#0A0E18;color:#E8D9A8}
.searchwrap{flex:1;min-width:230px;max-width:340px}
.searchwrap input{padding:10px 14px;font-size:14px;border-radius:2px}
.shopmeta{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;
  padding:16px 0 4px;font-family:'Roboto Mono',monospace;font-size:11.5px;letter-spacing:.09em;
  text-transform:uppercase;color:#6B6A64}
.sorthint{color:#8F7016}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:22px;padding:14px 0 0}
.card.is-oos .im img{opacity:.42;filter:grayscale(.55)}
.card.is-oos .nm{color:#8A887F}
.oos-flag{position:absolute;top:10px;left:10px;z-index:3;background:rgba(10,14,24,.9);color:#E8D9A8;
  font-family:'Roboto Mono',monospace;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;
  padding:5px 9px;border:1px solid rgba(201,162,39,.42);border-radius:2px}
.card .im{position:relative}
.btn-oos{display:inline-flex;align-items:center;justify-content:center;background:#E4E0D6!important;
  color:#8A887F!important;border:1px solid #DDD6C6;cursor:not-allowed;font-size:11px;
  letter-spacing:.06em;padding:9px 12px;border-radius:2px}
.oos-row{gap:14px;flex-wrap:wrap}
.oos-badge-lg{display:inline-flex;align-items:center;gap:7px;background:rgba(10,14,24,.06);
  border:1px solid rgba(10,14,24,.16);color:#8A887F;font-family:'Roboto Mono',monospace;
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:11px 15px;border-radius:2px}
.oos-note{margin-top:14px;font-size:13.5px;line-height:1.65;color:#6B6A64;
  border-left:2px solid rgba(201,162,39,.5);padding-left:14px}
.oos-note a{color:#8F7016;text-decoration:underline}
.card{display:flex;flex-direction:column;overflow:hidden;background:#FBF9F4;border:1px solid #DDD6C6;
  border-radius:3px;transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s ease,border-color .28s ease}
.card:hover{transform:translateY(-5px);border-color:#C9A227;box-shadow:0 26px 70px rgba(10,14,24,.16)}
.card-link{text-decoration:none;color:inherit;display:block}
.card .im{aspect-ratio:1/1;background:radial-gradient(circle at 50% 42%,rgba(201,162,39,.07),transparent 62%),#EFEAE0;
  display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid #DDD6C6}
.card .im img{width:100%;height:100%;object-fit:contain;transition:transform .42s ease}
.card:hover .im img{transform:scale(1.06)}
.card .ph{font-size:38px;opacity:.3}
.card .bd{padding:16px 17px 12px}
.card .sr{font-family:'Roboto Mono',monospace;font-size:10px;letter-spacing:.13em;text-transform:uppercase;
  color:#8F7016;margin-bottom:7px}
.card .nm{font-family:'Playfair Display',Georgia,serif;font-size:16.5px;font-weight:600;color:#14181F;
  line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}
.card .meta{display:flex;justify-content:space-between;gap:8px;font-size:11.5px;color:#6B6A64;margin-top:9px;
  font-family:'Roboto Mono',monospace;letter-spacing:.04em}
.card .meta b{color:#14181F;font-weight:500}
.card .buy{margin-top:auto;padding:12px 17px 17px;border-top:1px solid #DDD6C6;background:rgba(239,234,224,.4)}
.pricerow{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:3px}
.up{font-family:'Roboto Mono',monospace;font-size:11px;letter-spacing:.08em;color:#6B6A64;text-transform:uppercase}
.tot{font-family:'Playfair Display',Georgia,serif;font-size:1.4rem;font-weight:600;color:#14181F}
.fvline{margin-bottom:11px}
.fv{display:inline-block;font-family:'Roboto Mono',monospace;font-size:10px;letter-spacing:.06em;
  color:#8F7016;background:rgba(201,162,39,.11);padding:3px 8px;border-radius:2px}
.cardbtns{display:grid;grid-template-columns:1fr auto;gap:8px}
.btn-xs{font-family:'Inter',sans-serif;font-size:12.5px;font-weight:600;letter-spacing:.04em;
  padding:9px 14px;border-radius:2px;border:1px solid transparent;cursor:pointer;text-align:center;
  text-decoration:none;transition:all .2s ease}
.btn-add{background:linear-gradient(135deg,#F0E2B6 0%,#C9A227 48%,#96761C 100%);color:#0A0E18}
.btn-add:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(201,162,39,.32)}
.btn-det{background:transparent;color:#4A4E56;border-color:#DDD6C6}
.btn-det:hover{border-color:#C9A227;color:#8F7016}
.empty{text-align:center;padding:70px 20px}
.empty-ico{font-size:44px;opacity:.35;margin-bottom:14px}
.empty h3{font-family:'Playfair Display',Georgia,serif;font-size:1.35rem;margin-bottom:8px}
.empty p{color:#6B6A64;font-weight:300}
@media(max-width:700px){.shopbar{flex-direction:column;align-items:stretch}.searchwrap{max-width:none}}

/* ==========================================================================
   以下为 WordPress 版补齐样式
   原站 shop.html 的 .yrnav / .yrlist / .ybtn（年份索引）从未定义过 CSS，
   在旧站上是裸链接；此处按主题视觉语言补齐，并补充新引入组件的样式。
   ========================================================================== */

/* --- 年份索引 --- */
.yrnav{margin:46px 0 4px}
.yrnav h2{font-family:'Playfair Display',Georgia,serif;font-size:1.45rem;font-weight:600;
  color:#14181F;margin:0 0 16px;letter-spacing:-.01em}
.yrlist{display:flex;flex-wrap:wrap;gap:9px}
.ybtn{display:inline-flex;align-items:baseline;gap:7px;padding:8px 14px;
  border:1px solid #DDD6C6;border-radius:2px;background:#FBF9F4;color:#14181F;
  text-decoration:none;font-family:'Roboto Mono',monospace;font-size:12px;
  letter-spacing:.06em;transition:all .22s ease}
.ybtn:hover{border-color:#C9A227;color:#8F7016;transform:translateY(-2px);
  box-shadow:0 10px 26px rgba(10,14,24,.12)}
.ybtn span{font-size:10px;color:#8F7016;letter-spacing:.04em}

/* --- 商店页 hero（无配图，文案居中占满）--- */
.hm-hero-inner{grid-template-columns:1fr}
.hm-hero-copy{max-width:820px;margin:0 auto;text-align:center}
.hm-hero-copy .hm-sub{margin-left:auto;margin-right:auto}
.hm-hero{padding:64px 0 52px}

/* --- 列表区标题 --- */
.recent{margin:44px 0 4px}
.recent h2{font-family:'Playfair Display',Georgia,serif;font-size:1.45rem;
  font-weight:600;color:#14181F;margin:0;letter-spacing:-.01em}
.recsub{margin:8px 0 0;color:#6B6A64;font-weight:300;font-size:14.5px;line-height:1.6}

/* --- 空结果提示 --- */
.emptybox{text-align:center;padding:56px 22px;margin:24px 0;border:1px dashed #DDD6C6;
  background:#FBF9F4;border-radius:3px}
.emptybox p{margin:0}
.emptybox p:first-child{font-family:'Playfair Display',Georgia,serif;font-size:1.2rem;
  color:#14181F;margin-bottom:8px}
.emptybox p:last-child{color:#6B6A64;font-size:13.5px;line-height:1.6}

/* --- 导航购物车徽章 --- */
.nav-cart{white-space:nowrap}
.cart-count{font-family:'Roboto Mono',monospace;font-size:11px;color:#8F7016}

/* --- 搜索框 --- */
#q{min-width:210px;max-width:300px;text-align:left}
#ySel{font-family:'Roboto Mono',monospace;font-size:11.5px;letter-spacing:.06em;
  padding:7px 12px;background:#fff;border:1px solid #DDD6C6;border-radius:2px;
  color:#3A3A36;cursor:pointer}
#ySel:focus{outline:none;border-color:#C9A227}

/* --- 卡片按钮禁用态 --- */
.btn-xs[disabled]{opacity:.65;cursor:progress}

@media(max-width:700px){
  .hm-hero{padding:44px 0 34px}
  .hm-hero-copy{text-align:left;margin:0}
  .hm-hero-copy .hm-sub{margin-left:0;margin-right:0}
  #q{min-width:0;max-width:none;width:100%}
  .shopmeta{width:100%}
}
