/* 价目分类卡片：参考海报式分类信息层级，不使用参考素材 */
.price-grid {
  gap: 16px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none;
  backdrop-filter: none;
}
.price-grid::before { display: none; }
.price-column { display: grid; align-content: start; gap: 16px; }
.price-column .card { animation: card-arrive .55s both ease-out; }
.price-column .card:nth-child(2) { animation-delay: .08s; }
.price-column .card:nth-child(3) { animation-delay: .16s; }
.price-column:first-child { border-right: 0; }
.price-column .card, .layout-mode .card {
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.75) !important;
  border-radius: 20px;
  background: rgba(255,250,249,var(--panel-opacity,.30));
  box-shadow: 0 10px 26px rgba(108,41,61,.16), inset 0 1px 0 rgba(255,255,255,.65);
  backdrop-filter: blur(7px);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.price-column .card:hover, .layout-mode .card:hover { transform: translateY(-3px); border-color: rgba(255,255,255,.96) !important; box-shadow: 0 15px 30px rgba(108,41,61,.22), inset 0 1px 0 rgba(255,255,255,.72); }
.price-column .card + .card { border-top: 1px solid rgba(255,255,255,.75) !important; }
.price-column .card-title, .layout-mode .card-title {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 13px 17px 11px;
  justify-content: flex-start;
  border: 0;
  border-bottom: 1px solid rgba(180,80,116,.26);
  border-radius: 0;
  background: linear-gradient(90deg, rgba(255,236,243,.80), rgba(255,249,251,.18));
  box-shadow: none;
  color: #9b3159;
  font-size: 20px;
  letter-spacing: .03em;
}
.price-column .card-icon, .layout-mode .card-icon {
  width: 23px;
  height: 23px;
  background: #9d3c5d;
  font-size: 12px;
}
.price-column .category-svg, .layout-mode .category-svg { width: 12px; height: 12px; }
.price-column .item, .layout-mode .item {
  grid-template-columns: 24px minmax(0, 1fr) 82px;
  gap: 0;
  padding: 8px 17px;
  border-bottom-color: rgba(161,84,108,.28);
  font-size: 15px;
  position: relative;
  transition: transform .18s ease, background-color .18s ease, box-shadow .18s ease;
}
.price-column .item:hover, .layout-mode .item:hover { z-index: 2; background: rgba(255,255,255,.48); box-shadow: 0 4px 12px rgba(126,46,73,.12); transform: scale(1.025); }
.price-column .item-number, .layout-mode .item-number { color: #93455e; font-weight: 800; }
.price-column .price, .layout-mode .price { padding-left: 5px; color: #df3f5c; font-size: 17px; font-weight: 900; text-align: right; }
.price-column .blank-price, .layout-mode .blank-price { display: block; width: 45px; margin-left: auto; border-bottom-color: #db91a5; }
.price-column .note, .layout-mode .note { color: #8e6471; }
@media (max-width: 680px) {
  .price-grid { gap: 12px; }
  .price-column { gap: 12px; }
  .price-column + .price-column { border-top: 0; }
  .price-column .card-title { margin-top: 12px; font-size: 19px; }
  .price-column .item { grid-template-columns: 22px minmax(0, 1fr) 70px; padding: 8px 13px; font-size: 14px; }
  .price-column .price { font-size: 15px; }
  .layout-mode .card-title { margin-top: 12px; font-size: 19px; }
  .layout-mode .item { grid-template-columns: 22px minmax(0, 1fr) 70px; padding: 8px 13px; font-size: 14px; }
  .layout-mode .price { font-size: 15px; }
}
@media (min-width: 681px) {
  .price-grid.layout-mode { position: relative; display: block; min-height: 780px; overflow: visible; }
  .layout-mode .layout-card { position: absolute; }
  .layout-mode .card { min-width: 0; }
  .layout-editor .layout-card { cursor: grab; touch-action: none; }
  .layout-editor .layout-card:hover .card { box-shadow: 0 0 0 3px rgba(174, 63, 104, .75), 0 10px 26px rgba(108,41,61,.2); }
  .layout-editor .layout-card.selected .card { box-shadow: 0 0 0 4px rgba(174, 63, 104, .9), 0 10px 26px rgba(108,41,61,.24); }
  .layout-editor .layout-card:active { cursor: grabbing; }
}
@keyframes card-arrive { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { .price-column .card { animation: none; } .price-column .card, .layout-mode .card, .price-column .item, .layout-mode .item { transition: none; } }
