/**
 * Pagina [wm_coupon_manager]: strumento di lavoro per il titolare, non
 * una pagina "brand" per le clienti — niente colori personalizzabili
 * da WM_Branding qui, deliberatamente neutra e leggibile.
 */

.wm-coupon-manager{
  max-width:900px;
  margin:32px auto;
  font-family:Arial, sans-serif;
  color:#222222;
}

.wm-coupon-manager-denied{
  max-width:420px;
  text-align:center;
  padding:32px 24px;
}

.wm-coupon-manager-title{
  margin:0 0 20px;
  font-size:26px;
}

.wm-coupon-notice{
  margin:0 0 16px;
  padding:12px 16px;
  border-radius:10px;
  background:#E3F5E9;
  color:#1E7A42;
  font-size:14px;
}

/* --- Filtri --------------------------------------------------------------- */

.wm-coupon-filters{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:18px;
}

.wm-coupon-status-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  list-style:none;
  margin:0;
  padding:0;
}

.wm-coupon-status-tabs a{
  display:inline-block;
  padding:7px 14px;
  border-radius:999px;
  background:#F2F2F2;
  color:#444444;
  text-decoration:none;
  font-size:13px;
}

.wm-coupon-status-tabs a.is-current{
  background:#111111;
  color:#FFFFFF;
}

.wm-coupon-search-form{
  display:flex;
  gap:8px;
}

.wm-coupon-search-form input[type="search"]{
  padding:8px 12px;
  border:1px solid #DDDDDD;
  border-radius:8px;
  font-size:14px;
}

/* --- Bottoni --------------------------------------------------------------- */

.wm-btn{
  display:inline-block;
  padding:8px 18px;
  border:none;
  border-radius:8px;
  background:#111111;
  color:#FFFFFF;
  text-decoration:none;
  font-size:14px;
  cursor:pointer;
}

.wm-coupon-redeem-btn{
  padding:6px 14px;
  border:1px solid #111111;
  border-radius:8px;
  background:#FFFFFF;
  color:#111111;
  font-size:13px;
  cursor:pointer;
  white-space:nowrap;
}

.wm-coupon-redeem-btn:hover{
  background:#111111;
  color:#FFFFFF;
}

/* --- Tabella --------------------------------------------------------------- */

.wm-coupon-table-wrapper{
  overflow-x:auto;
}

.wm-coupon-table{
  width:100%;
  border-collapse:collapse;
  font-size:14px;
}

.wm-coupon-table th,
.wm-coupon-table td{
  padding:10px 12px;
  text-align:left;
  border-bottom:1px solid #EEEEEE;
  white-space:nowrap;
}

.wm-coupon-table th{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.05em;
  color:#888888;
}

.wm-coupon-table code{
  background:#F5F5F5;
  padding:2px 6px;
  border-radius:4px;
  font-size:13px;
}

.wm-coupon-status{
  display:inline-block;
  padding:3px 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
}

.wm-coupon-status-active{
  background:#E3F5E9;
  color:#1E7A42;
}

.wm-coupon-status-expired{
  background:#EDEDED;
  color:#777777;
}

.wm-coupon-status-redeemed{
  background:#FBE2E0;
  color:#B3261E;
}

/* --- Mobile: da tabella a schede impilate ----------------------------------- */

@media (max-width:640px){
  .wm-coupon-table thead{
    display:none;
  }

  .wm-coupon-table,
  .wm-coupon-table tbody,
  .wm-coupon-table tr,
  .wm-coupon-table td{
    display:block;
    width:100%;
  }

  .wm-coupon-table tr{
    margin-bottom:14px;
    border:1px solid #EEEEEE;
    border-radius:12px;
    padding:6px 12px;
  }

  .wm-coupon-table td{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    white-space:normal;
    border-bottom:1px solid #F5F5F5;
  }

  .wm-coupon-table td:last-child{
    border-bottom:none;
  }

  .wm-coupon-table td::before{
    content:attr(data-label);
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.05em;
    color:#999999;
    flex-shrink:0;
  }
}
