/* Store B —— 与 A 站同款骨架，青绿色配色 */
:root { --acc:#0f6e56; --acc-dark:#085041; --bg:#f6f8f7; --line:#e2e8e6; --txt:#1c2422; }
* { box-sizing:border-box; }
body { margin:0; font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  background:var(--bg); color:var(--txt); line-height:1.6; }
.wrap { max-width:1100px; margin:0 auto; padding:0 18px; }
a { color:var(--acc); text-decoration:none; }
.top { background:#fff; border-bottom:1px solid var(--line); position:sticky; top:0; z-index:9; }
.top-in { display:flex; align-items:center; justify-content:space-between; height:58px; }
.logo { font-weight:700; font-size:19px; color:var(--acc-dark); letter-spacing:.3px; }
.topnav a { margin-left:20px; color:var(--txt); font-size:14.5px; }
.topnav a:hover { color:var(--acc); }
.foot { border-top:1px solid var(--line); margin-top:46px; padding:20px 0 30px;
  color:#7a8683; font-size:13px; }
.page-title { font-size:24px; margin:26px 0 18px; }
.flash { border-radius:8px; padding:10px 14px; margin:14px 0; font-size:14px; border:1px solid; }
.flash.ok { background:#e8f5ee; border-color:#bfe3cf; color:#14532d; }
.flash.error { background:#fdeeee; border-color:#f3c3c3; color:#7f1d1d; }
.muted { color:#7a8683; } .tiny { font-size:12.5px; }
.btn { display:inline-block; background:#fff; border:1px solid var(--line); color:var(--txt);
  border-radius:8px; padding:9px 18px; font-size:14px; cursor:pointer; font-family:inherit; }
.btn:hover { border-color:var(--acc); color:var(--acc); }
.btn-primary { background:var(--acc); border-color:var(--acc); color:#fff; }
.btn-primary:hover { background:var(--acc-dark); color:#fff; }
.btn-sm { padding:5px 12px; font-size:13px; border-radius:6px; }
.btn-danger { color:#a32d2d; border-color:#eecaca; }
.btn-danger:hover { border-color:#a32d2d; color:#a32d2d; background:#fdf3f3; }
/* 商品网格 */
.grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:18px; }
.card { background:#fff; border:1px solid var(--line); border-radius:12px; overflow:hidden;
  color:var(--txt); transition:border-color .15s; }
.card:hover { border-color:var(--acc); }
.card-img { aspect-ratio:1/1; background:#eef2f1; }
.card-img img { width:100%; height:100%; object-fit:cover; display:block; }
.ph { display:flex; align-items:center; justify-content:center; height:100%;
  color:#9aa5a2; font-size:13px; } .ph.big { min-height:320px; }
.card-body { padding:12px 14px 16px; display:flex; flex-direction:column; gap:4px; }
.card-body b { font-size:14.5px; }
.price { color:var(--acc); font-weight:600; } .price.big { font-size:22px; margin:6px 0 12px; }
/* 详情 */
.pdp { display:grid; grid-template-columns:1fr 1fr; gap:34px; margin:28px 0; }
.pdp-img { background:#eef2f1; border-radius:12px; overflow:hidden; }
.pdp-img img { width:100%; display:block; }
.desc { color:#4c5654; margin:10px 0 16px; }
.buy { display:flex; gap:12px; align-items:end; margin:14px 0 8px; }
.buy label { font-size:13px; color:#5c6764; }
input, select, textarea { font-family:inherit; font-size:14px; border:1px solid var(--line);
  border-radius:8px; padding:9px 12px; background:#fff; color:var(--txt); }
input:focus, select:focus, textarea:focus { outline:2px solid #bfe3cf; border-color:var(--acc); }
.buy input { width:74px; }
/* 购物车 / 结算 */
.cart { width:100%; border-collapse:collapse; background:#fff; border:1px solid var(--line);
  border-radius:12px; overflow:hidden; margin:16px 0; }
.cart th, .cart td { padding:11px 14px; border-bottom:1px solid var(--line);
  text-align:left; font-size:14px; }
.cart th { background:#f1f5f4; font-size:13px; color:#5c6764; }
.cart .total-row td { font-size:15px; border-bottom:0; }
.cart-actions { display:flex; gap:12px; justify-content:flex-end; }
.cart td input { width:70px; }
.checkout-form { max-width:420px; display:flex; flex-direction:column; gap:12px; }
.checkout-form label { font-size:13.5px; color:#5c6764; display:flex; flex-direction:column; gap:5px; }
/* 订单页 */
.order-box { max-width:560px; margin:30px auto; background:#fff; border:1px solid var(--line);
  border-radius:14px; padding:26px 28px; }
.order-box.ok { border-color:#bfe3cf; background:#f4faf6; }
.order-box h1 { font-size:21px; margin:0 0 10px; }
.pay-btn { display:block; text-align:center; margin:16px 0 10px; padding:13px; font-size:16px; }
.sync-form { text-align:center; }
/* 后台 */
.admin-head { display:flex; align-items:center; justify-content:space-between;
  flex-wrap:wrap; gap:12px; }
.admin-nav { display:flex; gap:8px; }
.admin-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid var(--line);
  border-radius:12px; overflow:hidden; margin:14px 0 30px; }
.admin-table th, .admin-table td { padding:9px 12px; border-bottom:1px solid var(--line);
  font-size:13.5px; text-align:left; vertical-align:middle; }
.admin-table th { background:#f1f5f4; font-size:12.5px; color:#5c6764; }
.thumb { width:44px; height:44px; object-fit:cover; border-radius:6px; display:block; }
.row-actions { display:flex; gap:6px; align-items:center; }
.row-actions form { display:inline; }
.pill { background:#f1f5f4; border-radius:20px; padding:2px 10px; font-size:12px; color:#5c6764; }
.pill-ok { background:#e8f5ee; color:#14532d; }
.pform { background:#fff; border:1px solid var(--line); border-radius:12px; padding:18px 20px;
  margin:14px 0 26px; display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.pform h2 { grid-column:1/-1; margin:0 0 4px; font-size:16px; }
.pform label { font-size:13px; color:#5c6764; display:flex; flex-direction:column; gap:5px; }
.pform .full { grid-column:1/-1; }
.pform textarea { width:100%; }
.login-box { max-width:340px; margin:70px auto; background:#fff; border:1px solid var(--line);
  border-radius:14px; padding:26px 28px; }
.login-box h1 { font-size:19px; margin:0 0 16px; }
.login-box label { display:flex; flex-direction:column; gap:5px; font-size:13px; color:#5c6764; }
.login-box form { display:flex; flex-direction:column; gap:14px; }
code { background:#f1f5f4; border-radius:4px; padding:1px 5px; font-size:12.5px; }
@media (max-width:760px){ .pdp { grid-template-columns:1fr; } .pform { grid-template-columns:1fr; } }
