/* 鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲 鎵归噺鎿嶄綔鏍?鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲 */
.batch-bar {
  display:none;
  position:sticky; bottom:10px;
  background:linear-gradient(180deg,#1e1e3e,#16163a);
  border-top:1px solid rgba(255,215,0,0.2);
  padding:10px 12px; gap:8px; align-items:center;
  z-index:20; margin-top:8px; border-radius:8px;
  position:relative; /* 鏀逛负 relative 閬垮厤涓庡簳閮ㄦ爮鍐茬獊 */
}
.batch-bar.show { display:flex; flex-wrap:wrap; }
.batch-bar .sel-count { font-size:0.78rem; color:var(--gold); flex-basis:100%; margin-bottom:4px; }
.batch-btn { padding:7px 14px; border:none; border-radius:6px; font-size:0.76rem; font-weight:bold; cursor:pointer; transition:all 0.2s; }
.batch-btn.del { background:rgba(255,68,68,0.2); color:var(--danger-light); border:1px solid rgba(255,68,68,0.3); }
.batch-btn.del:hover { background:rgba(255,68,68,0.4); }
.batch-btn.cat { background:rgba(78,205,196,0.15); color:var(--success); border:1px solid rgba(78,205,196,0.3); }
.batch-btn.cat:hover { background:rgba(78,205,196,0.3); }
.batch-btn.exit { background:rgba(255,255,255,0.08); color:#fff; border:1px solid rgba(255,255,255,0.15); }
.batch-btn.exit:hover { border-color:var(--gold); color:var(--gold); }
.batch-select-all { font-size:0.75rem; color:var(--text-secondary); cursor:pointer; margin-right:6px; }
.batch-select-all:hover { color:var(--gold); }
.product-tag .cb { width:16px; height:16px; margin-right:2px; accent-color:var(--gold); cursor:pointer; flex-shrink:0; display:none; }
.batch-mode .product-tag .cb { display:inline-block; }
.batch-mode .product-tag { cursor:pointer; }
.batch-mode .product-tag.selected { background:rgba(255,215,0,0.12); border-color:rgba(255,215,0,0.3); }
.batch-mode .product-tag .tag-del { display:none; }

/* 鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲 鎾ら攢鎻愮ず 鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲 */
.undo-toast {
  position:fixed;
  bottom: calc(max(90px, 3vh + 60px)); /* 纭繚鍦ㄥ簳閮ㄦ爮涓婃柟锛岄伩鍏嶉伄鎸?*/
  left:50%;
  transform:translateX(-50%) translateY(60px);
  background:rgba(30,30,62,0.95); color:#fff;
  padding:12px 20px; border-radius:12px; font-size:0.85rem;
  z-index:250; transition:transform 0.3s cubic-bezier(0.4,0,0.2,1);
  pointer-events:all; border:1px solid rgba(255,215,0,0.2);
  box-shadow:0 8px 30px rgba(0,0,0,0.4);
  display:flex; align-items:center; gap:12px; opacity:0;
}
.undo-toast.show { transform:translateX(-50%) translateY(0); opacity:1; }
.undo-toast .undo-action { color:var(--gold); cursor:pointer; font-weight:bold; font-size:0.8rem; white-space:nowrap; }
.undo-toast .undo-action:hover { text-decoration:underline; }
.undo-toast .undo-msg { flex:1; }

/* 鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲 閫氱敤宸ュ叿绫?鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲鈺愨晲 */
.btn-icon-sm{width:24px;height:24px;border-radius:5px;background:rgba(255,68,68,0.12);color:var(--danger-light);border:none;cursor:pointer;font-size:0.8rem;display:flex;align-items:center;justify-content:center;transition:all 0.2s;flex-shrink:0;}
.btn-icon-sm:hover{background:rgba(255,68,68,0.35);}
.card{border-radius:8px;padding:8px 10px;background:rgba(255,255,255,0.03);transition:background 0.15s;}
.card:hover{background:rgba(255,255,255,0.06);}
.scrollbar-thin::-webkit-scrollbar{width:4px;}
.scrollbar-thin::-webkit-scrollbar-track{background:transparent;}
.scrollbar-thin::-webkit-scrollbar-thumb{background:rgba(255,215,0,0.2);border-radius:2px;}
.empty-state{text-align:center;padding:40px 10px;color:rgba(255,255,255,0.3);font-size:0.85rem;}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important;}
  .wheel-outer{animation:none!important;box-shadow:0 0 40px rgba(255,215,0,0.4);}
  @keyframes glow{from{box-shadow:0 0 40px rgba(255,215,0,0.4)}to{box-shadow:0 0 40px rgba(255,215,0,0.4);}}
  .btn-settings .bar-btn-circle{animation:none!important;}
  @keyframes btnPulse{0%,100%{box-shadow:0 0 16px rgba(255,215,0,0.4);transform:scale(1)}50%{box-shadow:0 0 16px rgba(255,215,0,0.4);transform:scale(1);}}
}

.scrollbar-gold::-webkit-scrollbar{width:4px;}
.scrollbar-gold::-webkit-scrollbar-thumb{background:rgba(255,215,0,0.2);border-radius:2px;}
.scrollbar-teal::-webkit-scrollbar{width:4px;}
.scrollbar-teal::-webkit-scrollbar-thumb{background:rgba(78,205,196,0.2);border-radius:2px;}