/* ============================================================================
   Athenian CSR Cart / Customer Portal
   Unified styling for:
   - Customer 3-card strip
   - Search + product result cards
   - Previous purchases list
   - Cart rows + summary + notices
   Scoped to .accb-portal so it plays nice in Bricks.
   ============================================================================ */

/* ===================== TOKENS / SCOPE ===================== */
:where(.accb-portal) {
  /* Brand / accents */
  --brand-1: var(--ctl-c1, #4fd1c5);
  --brand-2: var(--ctl-c2, #63b3ed);
  --brand-3: var(--ctl-c3, #22c55e);

  /* Foreground */
  --fg:      var(--text-high,  #f5f5f5);
  --fg-mid:  var(--text-mid,   #c0c4cf);
  --fg-low:  var(--text-low,   #9397a3);

  /* Surfaces */
  --bg-1: var(--surface-1, #06070a);
  --bg-2: var(--surface-2, #11121a);
  --bg-3: var(--surface-3, #181923);

  /* Borders / focus / semantic */
  --bd:        var(--border, #2c2e36);
  --bd-subtle: var(--border-subtle, #ffffff10);
  --bd-strong: var(--border-strong, #ffffff26);
  --ring:      var(--focus-ring, color-mix(in oklch, var(--brand-1) 55%, transparent));
  --danger:    #f56a6a;

  /* Radii & shadows */
  --radius-xs: 0.25rem;
  --radius-sm: var(--radius-sm, 0.5rem);
  --radius-md: var(--radius-md, 0.8rem);
  --radius-lg: var(--radius-lg, 1.4rem);
  --chip-radius: 999px;
  --drop-sm:   0 10px 26px rgba(0,0,0,.6);
  --drop-md:   0 26px 60px rgba(0,0,0,.78);

  /* Typography (slightly larger) */
  --font-xs: 0.85rem;
  --font-sm: 1.0rem;
  --font-md: 1.1rem;
  --font-lg: 1.25rem;

  /* Background mixes */
  --input-bg:     color-mix(in oklch, var(--bg-2) 92%, black 8%);
  --panel-bg:     color-mix(in oklch, var(--bg-2) 96%, black 4%);
  --card-bg:      color-mix(in oklch, var(--bg-2) 92%, black 8%);
  --card-bg-soft: color-mix(in oklch, var(--bg-3) 92%, black 8%);
}

/* ===================== ROOT ===================== */
.accb-portal {
  padding: 1.75rem;
  border-radius: var(--radius-lg);
  border: 1px solid color-mix(in oklch, var(--bd) 80%, transparent);
  box-shadow: var(--drop-md);
  font-size: var(--font-md);
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  color: var(--fg);
  color-scheme: dark;
  background:
    radial-gradient(160% 140% at 0% 0%, color-mix(in oklch, var(--brand-1) 18%, transparent), transparent 48%),
    radial-gradient(160% 140% at 100% 100%, color-mix(in oklch, var(--brand-2) 18%, transparent), transparent 55%),
    linear-gradient(135deg, color-mix(in oklch, var(--bg-2) 85%, transparent), color-mix(in oklch, var(--bg-1) 95%, transparent));
}

.accb-portal__columns {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: 1.4rem;
}

.accb-portal__column {
  min-width: 0;
}

@media (max-width: 960px) {
  .accb-portal__columns {
    grid-template-columns: 1fr;
  }
}

/* ===================== PANELS ===================== */
.accb-panel {
  background: var(--panel-bg);
  border-radius: var(--radius-lg);
  border: 1px solid var(--bd);
  padding: 1rem 1.1rem 1.25rem;
  box-shadow: var(--drop-sm);
  position: relative;
  overflow: hidden;
}

.accb-panel__header {
  margin-bottom: 0.75rem;
}

.accb-panel__title {
  margin: 0 0 0.25rem;
  font-size: var(--font-lg);
  font-weight: 600;
  letter-spacing: 0.02em;
}

.accb-panel__subtitle {
  margin: 0;
  font-size: var(--font-sm);
  color: var(--fg-low);
}

/* ===================== INPUTS ===================== */
.accb-input {
  width: 100%;
  border-radius: 999px;
  border: 1px solid var(--bd);
  background: var(--input-bg);
  color: var(--fg);
  padding: 0.5rem 0.9rem;
  font-size: var(--font-sm);
  line-height: 1.35;
  outline: none;
  transition:
    border-color 0.15s ease,
    box-shadow 0.15s ease,
    background 0.15s ease;
}

.accb-input::placeholder {
  color: var(--fg-low);
}

.accb-input:focus {
  border-color: var(--brand-2);
  box-shadow:
    0 0 0 1px color-mix(in oklch, var(--brand-2) 45%, transparent),
    0 0 10px color-mix(in oklch, var(--brand-2) 35%, transparent);
  background: color-mix(in oklch, var(--bg-2) 82%, var(--bg-3) 18%);
}

/* Textarea variant (order note) */
.accb-textarea {
  border-radius: var(--radius-md);
  min-height: 80px;
  resize: vertical;
  padding: 0.55rem 0.9rem;
}

/* Labels */
.accb-label {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  font-size: var(--font-xs);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--fg-mid);
  margin-bottom: 0.25rem;
}

/* Helper text */
.accb-help {
  margin: 0.25rem 0 0;
  font-size: var(--font-xs);
  color: var(--fg-low);
}

/* ===================== BUTTONS ===================== */
.accb-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid transparent;
  padding: 0.4rem 1rem;
  font-size: var(--font-sm);
  line-height: 1.3;
  cursor: pointer;
  background: color-mix(in oklch, var(--bg-3) 90%, black 10%);
  color: var(--fg);
  transition:
    transform 0.1s ease,
    box-shadow 0.15s ease,
    border-color 0.15s ease,
    filter 0.12s ease,
    background 0.15s ease;
  text-decoration: none;
  white-space: nowrap;
}

.accb-button--primary {
  background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
  color: #05060a;
  font-weight: 600;
  box-shadow: 0 3px 12px color-mix(in oklch, var(--brand-1) 45%, transparent);
}

.accb-button--primary:hover:not(.accb-button--disabled) {
  transform: translateY(-1px);
  filter: brightness(1.05);
  box-shadow: 0 6px 18px color-mix(in oklch, var(--brand-1) 55%, transparent);
}

.accb-button--secondary {
  background: transparent;
  border-color: var(--bd);
  color: var(--fg);
}

.accb-button--secondary:hover:not(.accb-button--disabled) {
  border-color: var(--brand-1);
  box-shadow:
    0 0 0 1px color-mix(in oklch, var(--brand-1) 40%, transparent),
    0 0 10px color-mix(in oklch, var(--brand-1) 35%, transparent);
}

.accb-button--small {
  padding: 0.25rem 0.7rem;
  font-size: var(--font-xs);
}

.accb-button--disabled {
  opacity: 0.55;
  cursor: not-allowed;
  box-shadow: none;
}

/* ===================== CUSTOMER PANEL – 3-CARD STRIP ===================== */

.accb-panel--customer {
  margin-bottom: 1.25rem;
}

.accb-panel__header--customer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.9rem;
  margin-bottom: 0.9rem;
}

.accb-customer-header-left {
  flex: 1 1 auto;
}

.accb-customer-header-right {
  flex: 0 0 auto;
  text-align: right;
}

.accb-customer-summary {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 0.35rem;
}

.accb-customer-summary__name {
  font-size: var(--font-sm);
  font-weight: 600;
}

.accb-customer-summary__chip {
  padding: 0.18rem 0.7rem;
  border-radius: var(--chip-radius);
  border: 1px solid var(--bd-subtle);
  background: rgba(0, 0, 0, 0.35);
  font-size: var(--font-xs);
  color: var(--fg-mid);
}

/* 3-card strip */
.accb-customer-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
}

.accb-customer-card {
  flex: 1 1 0;
  min-width: 230px;
  background:
    radial-gradient(circle at top left, #ffffff10, transparent 55%),
    radial-gradient(circle at bottom right, #000000aa, #000000f0);
  border-radius: var(--radius-md);
  border: 1px solid var(--bd-subtle);
  padding: 0.75rem 0.8rem 0.8rem;
  position: relative;
  overflow: hidden;
}

/* Card header: title + edit toggle */
.accb-customer-card__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.3rem;
  margin-bottom: 0.45rem;
}

.accb-customer-card__title {
  margin: 0;
  font-size: var(--font-sm);
  font-weight: 600;
}

.accb-customer-card__badge {
  display: inline-block;
  font-size: var(--font-xs);
  color: var(--fg-low);
}

.accb-customer-card__actions {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}

/* View vs edit bodies */
.accb-card-body--view {
  font-size: var(--font-sm);
  color: var(--fg-mid);
}

.accb-card-body--view p {
  margin: 0.18rem 0;
}

.accb-card-body--view .accb-card-line-strong {
  color: var(--fg);
  font-weight: 500;
}

.accb-card-body--edit {
  display: none;
  margin-top: 0.4rem;
}

.accb-card-body--edit .accb-field {
  margin-bottom: 0.4rem;
}

.accb-card-body--edit .accb-field--split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 0.45rem;
}

/* Toggle state: when editing, hide view + show edit */
.accb-customer-card.is-editing .accb-card-body--view {
  display: none;
}

.accb-customer-card.is-editing .accb-card-body--edit {
  display: block;
}

/* Subtle highlight while editing */
.accb-customer-card.is-editing {
  border-color: var(--brand-2);
  box-shadow:
    0 0 0 1px color-mix(in oklch, var(--brand-2) 40%, transparent),
    0 0 10px color-mix(in oklch, var(--brand-2) 30%, transparent);
}

/* Order note + actions */
.accb-customer-form__note {
  margin-top: 0.9rem;
}

.accb-customer-form__actions {
  margin-top: 0.7rem;
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

.accb-customer-form__status {
  font-size: var(--font-xs);
  color: var(--fg-low);
}

.accb-customer-form__status.is-pending {
  color: var(--fg-mid);
}

.accb-customer-form__status.is-success {
  color: var(--brand-3);
}

.accb-customer-form__status.is-error {
  color: var(--danger);
}

/* Responsive customer panel */
@media (max-width: 960px) {
  .accb-panel__header--customer {
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
  }

  .accb-customer-header-right {
    text-align: left;
  }
}

@media (max-width: 720px) {
  .accb-customer-card {
    min-width: 100%;
  }

  .accb-customer-form__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .accb-customer-form__actions .accb-button {
    width: 100%;
    justify-content: center;
  }
}

/* ===================== SEARCH ===================== */

.accb-panel--search {
  margin-bottom: 1rem;
}

.accb-search {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}

.accb-search__control {
  position: relative;
}

.accb-search__input {
  width: 100%;
  border-radius: var(--radius-md);
  border: 1px solid var(--bd-subtle);
  background: var(--bg-2);
  color: var(--fg);
  padding: 0.5rem 0.85rem;
  font-size: var(--font-sm);
}

.accb-search__input::placeholder {
  color: var(--fg-low);
}

.accb-search__input:focus {
  outline: none;
  border-color: var(--brand-2);
  box-shadow: 0 0 0 1px var(--ring);
}

/* Results container */
.accb-search__results {
  max-height: 420px;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  padding-right: 0.2rem;
}

/* Search status text */
.accb-search__empty,
.accb-search__loading {
  font-size: var(--font-xs);
  color: var(--fg-low);
  padding-top: 0.1rem;
}

/* ===================== SEARCH RESULT PRODUCT CARDS ===================== */

.accb-product-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 0.75rem;
  align-items: center;
  padding: 0.6rem 0.7rem;
  border-radius: var(--radius-md);
  border: 1px solid var(--bd-subtle);
  background: var(--card-bg);
  box-shadow: 0 6px 18px rgba(0,0,0,0.55);
}

.accb-product-card__thumb {
  width: 64px;
  height: 64px;
  border-radius: var(--radius-sm);
  background: #00000055;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.accb-product-card__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.accb-product-card__body {
  min-width: 0;
}

.accb-product-card__breadcrumbs {
  font-size: var(--font-xs);
  color: var(--fg-low);
  margin-bottom: 0.1rem;
}

.accb-product-card__label {
  font-size: var(--font-sm);
  font-weight: 500;
  margin-bottom: 0.1rem;
}

.accb-product-card__sku {
  font-size: var(--font-xs);
  color: var(--fg-low);
  margin-bottom: 0.15rem;
}

.accb-product-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  align-items: center;
}

.accb-product-card__price {
  font-size: var(--font-sm);
}

.accb-product-card__stock {
  font-size: var(--font-xs);
  color: var(--fg-mid);
}

/* Actions: qty + button */
.accb-product-card__actions {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.3rem;
}

.accb-product-card__qty {
  width: 80px;
  text-align: center;
  font-size: var(--font-sm);
}

/* Responsive product card layout */
@media (max-width: 720px) {
  .accb-product-card {
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-rows: auto auto;
    align-items: flex-start;
  }

  .accb-product-card__actions {
    grid-column: 1 / -1;
    flex-direction: row;
    justify-content: flex-end;
  }
}

/* ===================== PREVIOUS PURCHASES ===================== */

.accb-previous {
  margin-top: 0.4rem;
}

.accb-previous__loading,
.accb-previous__empty {
  font-size: var(--font-xs);
  color: var(--fg-low);
}

.accb-previous__list {
  list-style: none;
  margin: 0.4rem 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  max-height: 420px;
  overflow-y: auto;
  padding-right: 0.2rem;
}

.accb-previous__item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 0.75rem;
  align-items: center;
  padding: 0.6rem 0.7rem;
  border-radius: var(--radius-md);
  border: 1px solid var(--bd-subtle);
  background: var(--card-bg-soft);
  box-shadow: 0 6px 18px rgba(0,0,0,0.55);
}

.accb-previous__media {
  width: 64px;
  height: 64px;
  border-radius: var(--radius-sm);
  background: #00000055;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.accb-previous__thumb {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.accb-previous__body {
  min-width: 0;
}

.accb-previous__name {
  display: inline-block;
  font-size: var(--font-sm);
  font-weight: 500;
  color: var(--fg);
  text-decoration: none;
  margin-bottom: 0.1rem;
}

.accb-previous__name:hover {
  text-decoration: underline;
}

.accb-previous__sku {
  font-size: var(--font-xs);
  color: var(--fg-low);
  margin-bottom: 0.15rem;
}

.accb-previous__price {
  font-size: var(--font-sm);
  margin-bottom: 0.05rem;
}

.accb-previous__meta {
  font-size: var(--font-xs);
  color: var(--fg-mid);
}

.accb-previous__actions {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.3rem;
}

/* Responsive previous purchases layout */
@media (max-width: 720px) {
  .accb-previous__item {
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-rows: auto auto;
    align-items: flex-start;
  }

  .accb-previous__actions {
    grid-column: 1 / -1;
    flex-direction: row;
    justify-content: flex-end;
  }
}

/* ===================== CART / SUMMARY ===================== */

.accb-cart {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}

.accb-cart__items {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  max-height: 420px;
  overflow-y: auto;
  padding-right: 0.25rem;
}

.accb-cart__empty {
  font-size: var(--font-sm);
  color: var(--fg-low);
}

/* Cart row style aligned with product / previous cards */
.accb-cart-row {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) auto auto auto;
  gap: 0.75rem;
  align-items: center;
  padding: 0.6rem 0.7rem;
  border-radius: var(--radius-md);
  border: 1px solid var(--bd-subtle);
  background: var(--card-bg);
  box-shadow: 0 6px 18px rgba(0,0,0,0.55);
}

.accb-cart-row__left {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  min-width: 0;
}

.accb-cart-row__thumb {
  width: 56px;
  height: 56px;
  border-radius: var(--radius-sm);
  background: #00000055;
  overflow: hidden;
  flex-shrink: 0;
}

.accb-cart-row__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.accb-cart-row__meta {
  min-width: 0;
}

.accb-cart-row__name {
  font-size: var(--font-sm);
  font-weight: 500;
  margin-bottom: 0.1rem;
}

.accb-cart-row__sku {
  font-size: var(--font-xs);
  color: var(--fg-low);
}

.accb-cart-row__qty {
  width: 80px;
}

.accb-cart-row__qty-input {
  width: 100%;
  text-align: center;
  font-size: var(--font-sm);
}

.accb-cart-row__prices {
  text-align: right;
  font-size: var(--font-xs);
  color: var(--fg-mid);
}

.accb-cart-row__subtotal {
  margin-bottom: 0.1rem;
}

.accb-cart-row__total {
  font-size: var(--font-sm);
  color: var(--fg);
}

.accb-cart-row__actions {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

/* Responsive cart row layout */
@media (max-width: 900px) {
  .accb-cart-row {
    grid-template-columns: minmax(0, 1.8fr) auto auto;
    grid-template-rows: auto auto;
  }

  .accb-cart-row__actions {
    grid-column: 2 / -1;
    flex-direction: row;
    justify-content: flex-end;
  }
}

@media (max-width: 640px) {
  .accb-cart-row {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto auto auto;
  }

  .accb-cart-row__qty,
  .accb-cart-row__prices,
  .accb-cart-row__actions {
    text-align: left;
  }

  .accb-cart-row__actions {
    align-items: flex-start;
  }
}

/* Summary */
.accb-cart__summary {
  border-radius: var(--radius-md);
  border: 1px solid var(--bd-subtle);
  background: var(--card-bg-soft);
  padding: 0.55rem 0.75rem 0.65rem;
}

.accb-summary {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}

.accb-summary__row {
  display: flex;
  justify-content: space-between;
  font-size: var(--font-sm);
  color: var(--fg-mid);
}

.accb-summary__row--discount {
  color: var(--brand-3);
}

.accb-summary__row--total {
  margin-top: 0.25rem;
  padding-top: 0.3rem;
  border-top: 1px dashed var(--bd-subtle);
  font-weight: 600;
  font-size: var(--font-md);
  color: var(--fg);
}

/* Cart actions + notice */
.accb-cart__actions {
  display: flex;
  justify-content: space-between;
  gap: 0.6rem;
  align-items: center;
}

@media (max-width: 640px) {
  .accb-cart__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .accb-cart__actions .accb-button {
    width: 100%;
    justify-content: center;
  }
}

.accb-cart__notice {
  margin-top: 0.3rem;
  font-size: var(--font-xs);
  min-height: 1.2em;
}

.accb-cart__notice--error {
  color: var(--danger);
}

.accb-cart__notice--success {
  color: var(--brand-1);
}

.accb-cart__notice--info {
  color: var(--fg-mid);
}

/* ===================== SCROLLBARS (optional subtle) ===================== */

.accb-search__results::-webkit-scrollbar,
.accb-cart__items::-webkit-scrollbar,
.accb-previous__list::-webkit-scrollbar {
  width: 6px;
}

.accb-search__results::-webkit-scrollbar-track,
.accb-cart__items::-webkit-scrollbar-track,
.accb-previous__list::-webkit-scrollbar-track {
  background: transparent;
}

.accb-search__results::-webkit-scrollbar-thumb,
.accb-cart__items::-webkit-scrollbar-thumb,
.accb-previous__list::-webkit-scrollbar-thumb {
  background: #ffffff22;
  border-radius: 999px;
}
/* ===================== EMBEDDED CHECKOUT ===================== */
.accb-panel--payment {
  margin-top: 0.75rem;
}

.accb-checkout {
  margin-top: 0.5rem;
}

/* Hide the default "customer_details" wrapper Woo might output */
.accb-checkout__hidden-fields {
  display: none !important;
}

/* Order review + payment area */
.accb-checkout-form {
  margin: 0;
  padding: 0.4rem 0.1rem 0;
  border: 0;
}

.accb-checkout__order {
  padding: 0.6rem 0.4rem 0.2rem;
  border-radius: var(--radius-md);
  background: color-mix(in oklch, var(--bg-2) 94%, black 6%);
  border: 1px solid var(--bd-subtle);
  font-size: var(--font-sm); /* slightly larger */
}

/* Woo order review table inside */
.accb-checkout__order table.shop_table {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--font-sm);
}

.accb-checkout__order table.shop_table th,
.accb-checkout__order table.shop_table td {
  border: 0;
  padding: 0.25rem 0;
  color: var(--fg-mid);
}

.accb-checkout__order table.shop_table thead th {
  font-size: var(--font-xs);
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--fg-low);
}

.accb-checkout__order table.shop_table tfoot th {
  font-weight: 500;
  color: var(--fg);
}

.accb-checkout__order table.shop_table tfoot tr.order-total th,
.accb-checkout__order table.shop_table tfoot tr.order-total td {
  border-top: 1px dashed var(--bd-subtle);
  padding-top: 0.35rem;
  font-size: var(--font-md);
}

/* Payment box */
.accb-checkout__order #payment {
  background: transparent;
  border-radius: var(--radius-md);
  border-top: 1px dashed var(--bd-subtle);
  padding-top: 0.5rem;
  margin-top: 0.45rem;
}

.accb-checkout__order #payment ul.payment_methods {
  list-style: none;
  margin: 0 0 0.4rem;
  padding: 0;
  font-size: var(--font-sm);
}

.accb-checkout__order #payment ul.payment_methods li {
  margin-bottom: 0.2rem;
}

.accb-checkout__order #payment ul.payment_methods label {
  font-size: var(--font-sm);
  color: var(--fg);
}

.accb-checkout__order #payment .payment_box {
  background: color-mix(in oklch, var(--bg-3) 90%, black 10%);
  border-radius: var(--radius-md);
  border: 1px solid var(--bd-subtle);
  padding: 0.4rem 0.5rem;
  margin: 0.25rem 0 0.35rem;
  font-size: var(--font-xs);
  color: var(--fg-mid);
}

/* Place order button */
.accb-checkout__order #place_order {
  border-radius: 999px;
  background: linear-gradient(135deg, var(--brand-1), var(--brand-2));
  color: #05060a;
  font-weight: 600;
  font-size: var(--font-sm);
  padding: 0.45rem 1.2rem;
  border: 0;
  cursor: pointer;
  box-shadow: 0 2px 10px color-mix(in oklch, var(--brand-1) 40%, transparent);
}

.accb-checkout__order #place_order:hover {
  transform: translateY(-1px);
  filter: brightness(1.05);
}

/* Woo error / info notices inside our panel */
.accb-checkout .woocommerce-error,
.accb-checkout .woocommerce-info,
.accb-checkout .woocommerce-message {
  border-radius: var(--radius-md);
  border: 1px solid var(--bd-strong);
  background: color-mix(in oklch, var(--bg-3) 92%, black 8%);
  font-size: var(--font-xs);
}
