/* ========== 全局美化样式 by Claude ========== */
:root{
  --cbx-primary:#5FBFB7;
  --cbx-primary-dark:#3CA9A0;
  --cbx-accent:#81D8D1;
  --cbx-bg:#FEFCEC;
  --cbx-card:#ffffff;
  --cbx-text:#1f3a3a;
  --cbx-muted:#7a9090;
  --cbx-border:rgba(0,0,0,0.06);
  --cbx-shadow:0 8px 24px rgba(31,58,58,0.06);
  --cbx-shadow-hover:0 14px 36px rgba(31,58,58,0.12);
  --cbx-radius:14px;
}
.bg-content{
  background:linear-gradient(180deg,rgba(255,255,255,0.78) 0%,rgba(246,247,251,0.92) 100%) !important;
  backdrop-filter:saturate(1.1) blur(2px);
}
body{ color:var(--cbx-text); }
.fly-header{
  background:rgba(255,255,255,0.85) !important;
  backdrop-filter:blur(10px);
  box-shadow:0 2px 12px rgba(31,58,58,0.04);
  border-bottom:1px solid var(--cbx-border);
}
.fly-nav-user .layui-nav-item a{ transition:color .2s ease; }
.fly-nav-user .layui-nav-item a:hover{ color:var(--cbx-primary) !important; }
.layui-card,.fly-panel{
  border:1px solid var(--cbx-border) !important;
  border-radius:var(--cbx-radius) !important;
  box-shadow:var(--cbx-shadow) !important;
  background:var(--cbx-card) !important;
  transition:transform .25s ease, box-shadow .25s ease;
}
.layui-card-header,.fly-panel-title{
  border-bottom:1px solid var(--cbx-border) !important;
  font-weight:600;
  letter-spacing:.3px;
}
.goods-list .item,.goods-item,.shop-item{
  border-radius:var(--cbx-radius) !important;
  overflow:hidden;
  box-shadow:var(--cbx-shadow);
  border:1px solid var(--cbx-border) !important;
  background:#fff !important;
  transition:transform .25s ease, box-shadow .25s ease;
}
.goods-list .item:hover,.goods-item:hover,.shop-item:hover{
  transform:translateY(-4px);
  box-shadow:var(--cbx-shadow-hover);
}
.classify-list a,.category-tab a,.layui-tab-title li{
  border-radius:999px !important;
  transition:all .2s ease;
}
.classify-list a:hover{ background:rgba(95,191,183,.1) !important; color:var(--cbx-primary) !important; }
.classify-list a.active,.layui-tab-title li.layui-this{
  background:linear-gradient(135deg,var(--cbx-primary),var(--cbx-accent)) !important;
  color:#fff !important;
  border-color:transparent !important;
  box-shadow:0 6px 14px rgba(95,191,183,.35);
}
.goods-price,.price,em.price{
  color:var(--cbx-primary-dark) !important;
  font-weight:700;
}
.layui-btn{
  border-radius:10px !important;
  transition:transform .15s ease, box-shadow .2s ease, filter .2s ease;
  border:none;
}
.layui-btn:hover{ transform:translateY(-1px); filter:brightness(1.05); box-shadow:0 8px 18px rgba(31,58,58,.12); }
.layui-btn-normal{ background:linear-gradient(135deg,var(--cbx-accent),#3CA9A0) !important; }
.layui-btn-danger,.layui-btn-warm{ background:linear-gradient(135deg,#5FBFB7,#3CA9A0) !important; }
.layui-btn-primary{ background:#fff !important; border:1px solid var(--cbx-border) !important; color:var(--cbx-text) !important; }
.layui-btn-primary:hover{ border-color:var(--cbx-primary) !important; color:var(--cbx-primary) !important; }
.layui-input,.layui-textarea,.layui-select{
  border-radius:10px !important;
  border-color:var(--cbx-border) !important;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.layui-input:focus,.layui-textarea:focus{
  border-color:var(--cbx-primary) !important;
  box-shadow:0 0 0 3px rgba(95,191,183,.15);
}
.layui-badge,.layui-badge-rim,.tag{
  border-radius:6px !important;
  padding:2px 8px !important;
  font-weight:500;
}
.user-nav,.layui-side,.user-side{
  background:rgba(255,255,255,0.92) !important;
  border-radius:var(--cbx-radius);
  box-shadow:var(--cbx-shadow);
}
.user-nav a,.layui-nav-tree a{ transition:all .2s ease; border-radius:8px; }
.user-nav a:hover,.layui-nav-tree a:hover{ background:rgba(95,191,183,.08); color:var(--cbx-primary) !important; }
.user-nav .layui-this,.layui-nav-tree .layui-this{
  background:linear-gradient(135deg,rgba(95,191,183,.18),rgba(129,216,209,.12)) !important;
  color:var(--cbx-primary-dark) !important;
}
.layui-table,.bootstrap-table .table{
  border-radius:var(--cbx-radius);
  overflow:hidden;
  border:1px solid var(--cbx-border);
}
.layui-table thead tr,.bootstrap-table .table thead tr{
  background:linear-gradient(180deg,#F8FCFB,#EAF6F4) !important;
}
.layui-table tbody tr:hover{ background:rgba(95,191,183,.04) !important; }
.bg-content::-webkit-scrollbar{ width:8px; height:8px; }
.bg-content::-webkit-scrollbar-thumb{ background:rgba(0,0,0,.15); border-radius:8px; }
.bg-content::-webkit-scrollbar-thumb:hover{ background:var(--cbx-primary); }
.layui-form-label{ color:var(--cbx-muted) !important; font-weight:500; }
@media (max-width: 768px){
  .layui-container{ padding:0 12px !important; }
  .goods-list .item,.goods-item{ margin-bottom:14px; }
}
@keyframes cbxFadeUp{ from{ opacity:0; transform:translateY(8px);} to{ opacity:1; transform:none;} }
.layui-card,.goods-list .item,.goods-item,.shop-item,.fly-panel{ animation:cbxFadeUp .4s ease both; }

/* ========== Bootstrap 主题（购物/商品页）美化 ========== */
body{
  background-color:#FEFCEC !important; background-image:linear-gradient(180deg,rgba(254,252,236,0.55),rgba(245,250,248,0.7)),var(--cbx-bg-image,none) !important; background-size:cover !important; background-attachment:fixed !important;
  min-height:100vh;
}
/* 顶部导航 */
.navbar-acg{
  background:rgba(255,255,255,0.85) !important;
  backdrop-filter:blur(12px);
  box-shadow:0 2px 16px rgba(31,58,58,0.05);
  border-bottom:1px solid var(--cbx-border);
  padding:.65rem 0 !important;
}
.navbar-acg .navbar-brand{ font-size:1.15rem; letter-spacing:.4px; }
.navbar-acg .nav-link{
  border-radius:10px;
  padding:.45rem .85rem !important;
  margin:0 .15rem;
  transition:all .2s ease;
  color:#4a6363 !important;
}
.navbar-acg .nav-link:hover{
  background:rgba(95,191,183,.1);
  color:var(--cbx-primary-dark) !important;
}
.navbar-acg .nav-link.active{
  background:linear-gradient(135deg,var(--cbx-primary),var(--cbx-accent));
  color:#fff !important;
  box-shadow:0 4px 10px rgba(95,191,183,.3);
}
/* 搜索框 */
.search-input,.input-group .form-control{
  border-radius:999px !important;
  border:1px solid var(--cbx-border) !important;
  background:#FEFCEC !important;
  transition:all .2s ease;
}
.search-input:focus,.input-group .form-control:focus{
  background:#fff !important;
  border-color:var(--cbx-primary) !important;
  box-shadow:0 0 0 3px rgba(95,191,183,.15) !important;
}
.input-group-text{
  background:transparent !important;
  border:none !important;
  color:var(--cbx-muted);
}
/* 顶部按钮 */
.btn{
  border-radius:10px !important;
  font-weight:500;
  transition:transform .15s ease, box-shadow .2s ease, filter .2s ease;
}
.btn:hover{ transform:translateY(-1px); filter:brightness(1.04); }
.btn-primary{
  background:linear-gradient(135deg,var(--cbx-accent),#3CA9A0) !important;
  border:none !important;
  box-shadow:0 4px 12px rgba(129,216,209,.25);
}
.btn-primary:hover{ box-shadow:0 8px 20px rgba(129,216,209,.35) !important; }
.btn-outline-secondary{
  background:#fff !important;
  border:1px solid var(--cbx-border) !important;
  color:var(--cbx-text) !important;
}
.btn-outline-secondary:hover{
  border-color:var(--cbx-primary) !important;
  color:var(--cbx-primary-dark) !important;
  background:#fff !important;
}
.br-12{ border-radius:10px !important; }
/* 主面板 */
.panel{
  background:rgba(255,255,255,0.92) !important;
  border:1px solid var(--cbx-border) !important;
  border-radius:18px !important;
  box-shadow:0 10px 30px rgba(31,58,58,0.06) !important;
  backdrop-filter:blur(6px);
  overflow:hidden;
}
.panel-header{
  padding:18px 22px !important;
  border-bottom:1px solid var(--cbx-border) !important;
  background:linear-gradient(180deg,#fff,#F8FCFB);
}
.panel-header .icon{
  width:34px;height:34px;
  display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,rgba(95,191,183,.18),rgba(129,216,209,.12));
  border-radius:10px;
  margin-right:10px;
}
.panel-title{ font-weight:700 !important; font-size:1.05rem !important; color:var(--cbx-text) !important; letter-spacing:.3px; }
.panel-body{ padding:22px !important; }
/* 分类筛选 chip */
.chip-list{ gap:.5rem; flex-wrap:wrap; }
.chip{
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid var(--cbx-border) !important;
  padding:.4rem .95rem !important;
  font-weight:500;
  color:var(--cbx-text) !important;
  transition:all .25s ease;
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  cursor:pointer;
}
.chip:hover{
  border-color:var(--cbx-primary) !important;
  color:var(--cbx-primary-dark) !important;
  transform:translateY(-1px);
  box-shadow:0 4px 10px rgba(95,191,183,.18);
}
.chip.is-primary,.chip.active{
  background:linear-gradient(135deg,var(--cbx-primary),var(--cbx-accent)) !important;
  border-color:transparent !important;
  color:#fff !important;
  box-shadow:0 6px 16px rgba(95,191,183,.35);
}
.chip-icon{ font-size:.9em; }
/* 商品卡片 acg-card */
.acg-card{
  background:#fff !important;
  border:1px solid var(--cbx-border) !important;
  border-radius:16px !important;
  overflow:hidden;
  box-shadow:0 6px 18px rgba(31,58,58,0.05) !important;
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease;
  position:relative;
}
.acg-card:hover{
  transform:translateY(-6px);
  box-shadow:0 18px 38px rgba(31,58,58,0.13) !important;
  border-color:rgba(95,191,183,.4) !important;
}
.acg-thumb{
  overflow:hidden;
  background:#000;
  position:relative;
}
.acg-thumb img,.acg-thumb > *{
  transition:transform .5s ease;
}
.acg-card:hover .acg-thumb img{ transform:scale(1.04); }
.acg-card .p-3{ padding:1rem 1.1rem !important; }
.acg-card .tags{ display:flex; flex-wrap:wrap; gap:.35rem; margin-bottom:.45rem; }
.badge-soft{
  border-radius:6px !important;
  padding:.18rem .55rem !important;
  font-weight:500 !important;
  font-size:.72rem !important;
  background:rgba(129,216,209,.12) !important;
  color:#3CA9A0 !important;
  border:none !important;
}
.badge-soft-success{
  background:rgba(46,156,116,.15) !important;
  color:#2f9e6c !important;
}
.badge-soft-warning,.badge-soft-danger{
  background:rgba(95,191,183,.15) !important;
  color:var(--cbx-primary-dark) !important;
}
/* 价格 */
.acg-card .price,.price{
  color:var(--cbx-primary-dark) !important;
  font-weight:800 !important;
  font-size:1.25rem !important;
}
.price .currency,.price small{ font-size:.7em; opacity:.8; }
/* 库存/已售 信息 */
.acg-card .item-info,.acg-card .info-line{
  color:var(--cbx-muted) !important;
  font-size:.78rem !important;
  border-top:1px dashed var(--cbx-border);
  padding-top:.55rem !important;
  margin-top:.55rem !important;
}
/* 间距 */
.item-list{ row-gap:1.25rem; }
@media (min-width: 992px){ .panel-body{ padding:26px !important; } }
/* 滚动条美化 */
::-webkit-scrollbar{ width:10px; height:10px; }
::-webkit-scrollbar-thumb{ background:rgba(129,216,209,.25); border-radius:10px; }
::-webkit-scrollbar-thumb:hover{ background:var(--cbx-primary); }
/* 卡片淡入 */
.acg-card{ animation:cbxFadeUp .4s ease both; }
.acg-card:nth-child(2){ animation-delay:.05s; }
.acg-card:nth-child(3){ animation-delay:.1s; }
.acg-card:nth-child(4){ animation-delay:.15s; }
