.wcwp-center{ text-align:center; }
.wcwp-grid input[type="text"], .wcwp-grid input[type="number"], .wcwp-grid select{
  width: 100%;
  max-width: 100%;
}
.wcwp-actions{ white-space:nowrap; }
.wcwp-grid tr.wcwp-saving td{ opacity: .6; }
.wcwp-switch{position:relative;display:inline-block;width:44px;height:24px;vertical-align:middle}
.wcwp-switch input{opacity:0;width:0;height:0}
.wcwp-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:#bdbdbd;transition:.15s;border-radius:999px}
.wcwp-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background:white;transition:.15s;border-radius:50%}
.wcwp-switch input:checked + .wcwp-slider{background:#2ecc71}
.wcwp-switch input:checked + .wcwp-slider:before{transform:translateX(20px)}

.wcwp-accordion{ margin-top:16px; border:1px solid #ccd0d4; background:#fff; border-radius:6px; overflow:hidden;}
.wcwp-acc-btn{ width:100%; text-align:left; padding:12px 14px; font-size:14px; background:#f6f7f7; border:0; cursor:pointer;}
.wcwp-acc-btn:hover{ background:#f0f0f1; }
.wcwp-acc-body{ padding:12px 14px; }

.wcwp-badge{
  display:inline-block;
  margin-left:6px;
  padding:2px 6px;
  border-radius:999px;
  font-size:11px;
  background:#f0f0f1;
}
.wcwp-defaults-table td, .wcwp-defaults-table th{ vertical-align:middle; }

/* Disabled switches should look obviously locked */
.wcwp-switch input:disabled + .wcwp-slider{
  opacity: .45;
  cursor: not-allowed;
  filter: grayscale(1);
}
.wcwp-switch input:disabled{
  cursor: not-allowed;
}

/* Tiny toast */


.wcwp-toast{
  position: fixed;
  top: 52px;
  right: 18px;
  z-index: 999999;
  padding: 10px 12px;
  border-radius: 8px;
  background: #e6f7ed;
  border: 1px solid #86d19b;
  color: #0f5132;
  box-shadow: 0 6px 20px rgba(0,0,0,.12);
  font-size: 13px;
}

/* Sticky header for defaults table */
.wcwp-defaults-table thead th{
  position: sticky;
  top: 32px; /* below WP admin bar */
  background: #fff;
  z-index: 5;
}
@media (max-width: 782px){
  .wcwp-defaults-table thead th{ top: 46px; } /* mobile admin bar */
}

.wcwp-danger-btn{
  background:#d63638 !important;
  border-color:#d63638 !important;
  color:#fff !important;
}
.wcwp-danger-btn:hover{ filter:brightness(.95); }


/* Order screen metabox layout helpers */
#wcwp_order_invoice .inside,
#wcwp_order_requests .inside{
  overflow: hidden;
}
#wcwp_order_invoice input[type="url"],
#wcwp_order_invoice input[type="text"]{
  width: 100%;
  max-width: 100%;
}
#wcwp_order_requests textarea.wcwp-admin-note{
  width: 100%;
  max-width: 100%;
  min-width: 220px;
  box-sizing: border-box;
}


/* Invoice URL input should never overflow the metabox */
.wcwp-invoice-url{max-width:100% !important; width:100% !important; box-sizing:border-box;}

/* Invoice metabox: prevent overflow in narrow columns */
.wcwp-invoice-box,
.wcwp-invoice-box *{
  box-sizing: border-box;
  max-width: 100%;
}
.wcwp-invoice-section{ margin: 0 0 12px 0; }
.wcwp-invoice-box .description{ white-space: normal; word-break: break-word; }
#wcwp_invoice_pdf_preview{ word-break: break-word; }

.wcwp-drag{cursor:move;color:#888;font-size:16px;line-height:1;user-select:none;}
.wcwp-default-layout{width:110px;}

#wcwp-defaults-tbody .wcwp-sort-placeholder{background:#f6f7f7;height:42px;}
#wcwp-defaults-tbody .wcwp-sort-placeholder td{border:2px dashed #c3c4c7;}
.ui-sortable-helper{display:table;}


/* WCWP Address Book modal (minimal; theme controls inputs/buttons) */
.wcwp-ab-modal{position:fixed;inset:0;z-index:99999}
.wcwp-ab-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.45)}
.wcwp-ab-modal__dialog{position:relative;max-width:760px;margin:6vh auto;background:#fff;border-radius:10px;overflow:hidden}
.wcwp-ab-modal__header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #eee}
.wcwp-ab-modal__body{padding:14px;max-height:76vh;overflow:auto}
.wcwp-ab-item{border:1px solid #eee;border-radius:10px;padding:10px;margin:0 0 10px 0;display:flex;justify-content:space-between;gap:12px}
.wcwp-ab-item__actions{white-space:nowrap;display:flex;gap:8px;align-items:flex-start}
.wcwp-ab-card{border:1px solid #eee;border-radius:10px;padding:12px;margin:0 0 10px 0}
.wcwp-ab-badge{display:inline-block;border:1px solid #ddd;border-radius:999px;padding:2px 8px;font-size:12px;margin-right:6px}
