/* =========================================================
   ADMIN VOUCHERS
   ========================================================= */
.admin-vouchers-page,
.admin-voucher-form-page { display:grid; gap:1rem; }
.admin-voucher-create-button,
.admin-voucher-submit-button { gap:.45rem; }
.admin-voucher-overview { display:flex; align-items:stretch; gap:1rem; padding:.85rem 1rem; border:1px solid var(--admin-border); border-radius:.95rem; background:linear-gradient(145deg,rgba(250,247,240,.98),rgba(246,241,232,.96)); box-shadow:0 10px 25px rgba(65,74,65,.045); }
.admin-voucher-overview-item { flex:1; min-width:0; }
.admin-voucher-overview-item span { display:block; color:var(--admin-text-muted); font-size:.55rem; font-weight:750; letter-spacing:.06em; text-transform:uppercase; }
.admin-voucher-overview-item strong { display:block; margin-top:.18rem; color:var(--admin-text); font-size:.9rem; }
.admin-voucher-overview-divider { width:1px; background:var(--admin-border); }
.admin-voucher-toolbar { min-height:2.4rem; display:flex; align-items:center; justify-content:flex-end; gap:.7rem; }
.admin-voucher-toolbar > span { color:var(--admin-text-muted); font-size:.58rem; }
.admin-voucher-batch-delete:disabled { opacity:.45; cursor:not-allowed; }
.admin-voucher-table-panel { overflow:hidden; border:1px solid var(--admin-border); border-radius:1rem; background:linear-gradient(145deg,rgba(250,247,240,.98),rgba(246,241,232,.96)); box-shadow:0 12px 28px rgba(65,74,65,.055); }
.admin-voucher-table-scroll { overflow-x:auto; }
.admin-voucher-table,
.admin-voucher-usage-table { width:100%; border-collapse:collapse; }
.admin-voucher-table { table-layout:fixed; min-width:0; }
.admin-voucher-table col.is-check { width:2.8rem; }
.admin-voucher-table col.is-code { width:22%; }
.admin-voucher-table col.is-discount { width:10%; }
.admin-voucher-table col.is-max { width:16%; }
.admin-voucher-table col.is-capacity { width:20%; }
.admin-voucher-table col.is-status { width:15%; }
.admin-voucher-table col.is-actions { width:10rem; }
.admin-voucher-table th,
.admin-voucher-usage-table th { padding:.78rem .68rem; border-bottom:1px solid var(--admin-border); color:var(--admin-text-muted); background:rgba(119,137,119,.055); font-size:.52rem; font-weight:800; letter-spacing:.075em; text-align:left; text-transform:uppercase; }
.admin-voucher-table td,
.admin-voucher-usage-table td { padding:.76rem .68rem; border-bottom:1px solid var(--admin-border); color:var(--admin-text-soft); font-size:.62rem; vertical-align:middle; }
.admin-voucher-table tbody tr:last-child td,
.admin-voucher-usage-table tbody tr:last-child td { border-bottom:0; }
.admin-voucher-table tbody tr:hover { background:rgba(119,137,119,.045); }
.admin-voucher-check-cell { padding-left:.72rem !important; padding-right:.28rem !important; text-align:center !important; }
.admin-voucher-check-cell input { width:.92rem; height:.92rem; accent-color:var(--admin-primary-deep); cursor:pointer; }
.admin-voucher-code-wrap { min-width:0; }
.admin-voucher-code-wrap strong { display:block; overflow:hidden; color:var(--admin-text); font-size:.67rem; font-weight:850; letter-spacing:.04em; text-overflow:ellipsis; white-space:nowrap; }
.admin-voucher-code-wrap span { display:block; margin-top:.13rem; overflow:hidden; color:var(--admin-text-muted); font-size:.5rem; text-overflow:ellipsis; white-space:nowrap; }
.admin-voucher-value { color:#92703c; font-size:.66rem; font-weight:850; white-space:nowrap; }
.admin-voucher-capacity strong { display:block; color:var(--admin-text); font-size:.63rem; font-weight:800; }
.admin-voucher-capacity span { display:block; margin-top:.12rem; color:var(--admin-text-muted); font-size:.49rem; white-space:nowrap; }
.admin-voucher-actions-heading { text-align:center !important; }
.admin-voucher-actions { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:.35rem; }
.admin-voucher-action { min-height:2rem; display:inline-flex; align-items:center; justify-content:center; padding:.42rem .58rem; border:1px solid var(--admin-border); border-radius:.58rem; font-size:.55rem; font-weight:800; line-height:1; text-decoration:none; transition:transform .15s ease,background .15s ease,border-color .15s ease; }
.admin-voucher-action:hover { transform:translateY(-1px); }
.admin-voucher-action.is-edit { color:var(--admin-primary-deep); background:rgba(119,137,119,.08); }
.admin-voucher-action.is-delete { color:var(--admin-danger); background:rgba(169,84,66,.06); }
.admin-voucher-toggle { width:100%; display:flex; align-items:center; gap:.45rem; padding:0; border:0; color:var(--admin-text-muted); background:transparent; cursor:pointer; }
.admin-voucher-toggle-track { width:2rem; height:1.08rem; display:block; flex:0 0 auto; padding:.13rem; border:1px solid var(--admin-border); border-radius:999px; background:rgba(110,118,111,.15); transition:background .18s ease,border-color .18s ease; }
.admin-voucher-toggle-track span { width:.7rem; height:.7rem; display:block; border-radius:50%; background:#fff; box-shadow:0 1px 4px rgba(42,49,44,.22); transition:transform .18s ease; }
.admin-voucher-toggle.is-active .admin-voucher-toggle-track { border-color:rgba(86,125,91,.38); background:rgba(86,125,91,.72); }
.admin-voucher-toggle.is-active .admin-voucher-toggle-track span { transform:translateX(.88rem); }
.admin-voucher-toggle-label { font-size:.54rem; font-weight:800; white-space:nowrap; }
.admin-voucher-toggle.is-active .admin-voucher-toggle-label { color:#4e7458; }
.admin-voucher-form-layout { display:grid; grid-template-columns:minmax(0,1fr) 19rem; align-items:start; gap:1rem; }
.admin-voucher-form-main,
.admin-voucher-form-sidebar { min-width:0; display:grid; gap:1rem; }
.admin-voucher-form-sidebar { position:sticky; top:2rem; }
.admin-voucher-code-input { letter-spacing:.055em; text-transform:uppercase; }
.admin-voucher-submit-button { width:100%; margin-top:.9rem; }
.admin-form-help { display:block; margin-top:.3rem; color:var(--admin-text-muted); font-size:.51rem; line-height:1.45; }
.admin-voucher-usage-card { display:block; padding:.85rem; border:1px solid rgba(185,154,100,.2); border-radius:.9rem; color:var(--admin-text-soft); background:linear-gradient(145deg,rgba(185,154,100,.08),rgba(250,247,240,.9)); }
.admin-voucher-usage-card > span { display:block; color:var(--admin-text); font-size:.6rem; font-weight:800; }
.admin-voucher-usage-card strong { display:block; margin-top:.3rem; color:#92703c; font-size:1rem; font-weight:850; }
.admin-voucher-usage-card p { margin-top:.18rem; color:var(--admin-text-muted); font-size:.53rem; line-height:1.5; }
.admin-voucher-usage-table { min-width:48rem; }
.admin-voucher-empty-state { min-height:10rem; display:flex; align-items:center; justify-content:center; padding:1.5rem; }
.admin-voucher-empty-state p { color:var(--admin-text); font-size:.72rem; font-weight:750; }
.admin-voucher-empty-state span { display:block; margin-top:.14rem; color:var(--admin-text-muted); font-size:.58rem; }
@media (max-width:1100px) {
  .admin-voucher-table { min-width:58rem; }
}
@media (max-width:820px) {
  .admin-voucher-form-layout { grid-template-columns:1fr; }
  .admin-voucher-form-sidebar { position:static; }
  .admin-voucher-overview { display:grid; grid-template-columns:1fr 1fr; }
  .admin-voucher-overview-divider { display:none; }
}
@media (max-width:520px) {
  .admin-voucher-overview { grid-template-columns:1fr; }
  .admin-voucher-toolbar { justify-content:space-between; }
}
