/* ส่วนเสริมของเว็บจริง (นอกเหนือจาก ozshop.css ที่ Codex ออกแบบ — ไฟล์นั้นคัดลอกมาทั้งไฟล์ อย่าแก้ตรงนั้น) */
.badge-stack { position: absolute; z-index: 1; top: 12px; left: 12px; display: flex; flex-wrap: wrap; gap: 6px; max-width: calc(100% - 24px); }
.badge-stack .badge, .product-card__media .badge-stack .badge, .product-gallery__main .badge-stack .badge { position: static; }
.product-gallery__main .badge-stack { top: 20px; left: 20px; }
.product-gallery__main img { transition: transform .35s var(--ease, ease); }
.product-card__price .price--old { margin-left: 6px; }
.page-loading { min-height: 60vh; }
.not-found { padding: 96px 0; text-align: center; }
.not-found h1 { margin: 12px 0; }
.skip-link { position: absolute; left: -9999px; top: 8px; z-index: 300; padding: 10px 16px; border-radius: 10px; background: var(--surface); color: var(--primary-ink); }
.skip-link:focus { left: 16px; }
@media (max-width: 600px) { .badge-stack { top: 8px; left: 8px; gap: 4px; } }
@media (prefers-reduced-motion: reduce) { .product-gallery__main img { transition: none; } }
.demo-card-icon { display: grid; place-items: center; width: 176px; aspect-ratio: 1; border-radius: 20px; border: 1px solid var(--line); background: linear-gradient(135deg, var(--surface-soft), var(--surface)); color: var(--primary); font-size: 72px; }
@media (max-width: 900px) { .demo-card-icon { width: 140px; margin: 0 auto; font-size: 60px; } }
.footer-admin { margin-top: 12px; }
.label-sheet { border: 1px dashed var(--line-strong); border-radius: 12px; padding: 16px; display: grid; gap: 6px; }
.label-sheet .order-id { font-size: 18px; }
.label-sheet .label-barcode { height: 48px; background: repeating-linear-gradient(90deg, var(--heading) 0 2px, transparent 2px 4px, var(--heading) 4px 5px, transparent 5px 8px); border-radius: 4px; }
/* แท็บสถานะในเว็บจริงเป็นลิงก์ (แบบใช้ button) — ใช้หน้าตาเดียวกัน */
.status-tabs a { display: flex; align-items: center; gap: 8px; min-height: 44px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); padding: 8px 14px; font-size: 14px; color: var(--text); }
.status-tabs a.is-active { border-color: var(--primary); color: var(--primary-ink); background: var(--surface-soft); }
.table-footer a.icon-button { display: inline-grid; place-items: center; }
.stock-product a { color: inherit; }
.admin-order-drawer:focus, .cart-drawer:focus, #main-content:focus { outline: none; }
