/* ============================================================
   Shop Buy Now — My Account
   Loaded only on WooCommerce account pages.
   ============================================================ */

/* the default page title block is replaced by the account header */
.woocommerce-account .page-head { display: none; }
.woocommerce-account .page-body { padding: 0 0 30px; }

.moya-account { color: var(--ink); }

/* ---------------------------------------------------------- profile band */
/* The account header reuses the global .me-head / .me-row / .me-avatar
   components from style.css, so it matches the Me page pixel for pixel. */

/* ---------------------------------------------------------- navigation */
.me-account-nav { margin-bottom: 14px; }
.moya-account .me-item {
  color: var(--ink); text-decoration: none; font-weight: 500;
}
.moya-account .me-item .od-name,
.moya-account .me-item > span { text-decoration: none; }
.moya-account .od-item a.od-name,
.moya-account .od-name { color: var(--ink); text-decoration: none; }
.moya-account .me-item.is-active { background: var(--red-soft); color: var(--red-dark); font-weight: 600; }
.me-item.is-active .arr { color: var(--red); }
.moya-account .me-item.is-logout { border-top: 1px solid var(--line); color: #A33; }

/* ---------------------------------------------------------- content card */
/* WooCommerce's own stylesheet floats this container into a 22%+74% two-column
   layout — we render a single column, so reset it completely. */
.woocommerce-account .woocommerce-MyAccount-content {
  float: none !important;
  /* width:100% + side margins = 28px overflow on the right; auto keeps the
     same 14px edges as the menu card */
  width: auto !important;
  margin: 0 14px !important;
  padding: 0;
}
.acc-content {
  background: #fff; border-radius: 14px;
  box-shadow: var(--shadow-card); border: 1px solid rgba(22, 20, 30, .05);
  padding: 16px 14px 18px;
  font-size: 13px; color: var(--ink2); line-height: 1.7;
}
/* nested blocks (payment instructions, plugin cards…) must not add their own
   horizontal margins inside the card */
.moya-account .acc-content > * { margin-left: 0; margin-right: 0; }
.acc-content > h2, .acc-content > h3 {
  font-size: 15px; color: var(--ink); margin: 0 0 12px;
}
.acc-content p:last-child { margin-bottom: 0; }
.acc-content a { color: var(--red); }
/* no underlines inside the account content — they read as stray lines */
.moya-account .acc-content a { text-decoration: none; }
/* WooCommerce info notices ("Confirm your email address…" etc.) */
.acc-content .woocommerce-Message {
  display: block; margin: 0 0 14px;
  padding: 12px 14px;
  border: 1px solid rgba(52, 90, 219, .18); border-radius: 11px;
  background: #F0F4FE; color: #2C4A9E;
  font-size: 12.5px;
}
.acc-content .woocommerce-Message .woocommerce-Button,
.acc-content .woocommerce-Message .button {
  float: right; margin: -2px 0 0 12px; min-height: 32px; padding: 0 12px;
  border-radius: 8px; font-size: 12px;
}
.acc-content .woocommerce-Message::after { content: ""; display: table; clear: both; }
.acc-content .woocommerce-info, .acc-content .woocommerce-message {
  border-top-color: rgba(52, 90, 219, .35);
}
.acc-content .woocommerce-Button, .acc-content .button {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 42px; padding: 0 18px;
  border: 0; border-radius: 11px;
  background: linear-gradient(180deg, var(--red-2), var(--red));
  color: #fff; font-size: 13px; font-weight: 600;
  box-shadow: 0 6px 16px -10px rgba(226, 58, 46, .9);
  cursor: pointer;
}

/* ---------------------------------------------------------- dashboard */
/* The dashboard endpoint has no content of its own — the menu above is the
   whole page. Strip the card chrome so no empty white box is left behind. */
.acc-content--bare {
  background: none; box-shadow: none; border: 0;
  padding: 0;
}
.acc-content--bare:empty { display: none; }

/* ---------------------------------------------------------- order cards (Orders list & Order details) */
.moya-account .order-cards { padding: 0; }
.order-cards .order-row { margin: 0 0 10px; }
/* product thumbnails sit on the RIGHT of each order card, info on the left */
.moya-account .order-row .order-body { flex-direction: row-reverse; justify-content: flex-end; }
.moya-account .order-row .order-sum { margin-left: 0; margin-right: auto; text-align: left; }
.od-card { margin: 0 0 10px; }
.od-note { padding: 10px 13px 0; font-size: 11.5px; color: var(--ink3); line-height: 1.6; }

.od-items { padding: 8px 13px 0; }
.od-item {
  display: flex; align-items: center; gap: 10px;
  padding: 9px 0;
  border-bottom: 1px solid var(--line);
}
.od-item:last-child { border-bottom: 0; }
.od-img {
  flex: 0 0 46px; width: 46px; height: 58px;
  border-radius: 8px; overflow: hidden;
  background: #EDEDEF; display: block;
}
.od-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.od-img-none { border: 1px dashed var(--line); background: transparent; }
.od-main { flex: 1 1 auto; min-width: 0; }
.od-name {
  display: block; font-size: 12.5px; font-weight: 500; color: var(--ink);
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.od-meta { font-size: 10.5px; color: var(--ink3); margin-top: 4px; }
.od-meta del { color: var(--ink3); }
.od-price { flex: 0 0 auto; font-size: 12.5px; font-weight: 600; color: var(--ink); text-align: right; }

.od-totals { padding: 10px 13px 0; border-top: 1px solid var(--line); margin-top: 8px; }
.od-line { display: flex; justify-content: space-between; gap: 10px; padding: 4px 0; font-size: 12px; color: var(--ink2); }
.od-line b { font-weight: 600; color: var(--ink); }
.od-line.is-total { padding-top: 8px; border-top: 1px dashed var(--line); margin-top: 4px; font-size: 13.5px; }
.od-line.is-total b { color: var(--red); }

.od-pay { display: flex; justify-content: space-between; gap: 10px; padding: 10px 13px 12px; font-size: 11.5px; color: var(--ink3); }
.od-pay b { font-weight: 600; color: var(--ink); }

.od-downloads {
  background: #fff; border-radius: 14px; overflow: hidden;
  box-shadow: var(--shadow-card); border: 1px solid rgba(22, 20, 30, .05);
}
.od-downloads-t { padding: 12px 14px 4px; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--ink3); }
.od-downloads .od-item { padding: 11px 14px; border-bottom: 1px solid var(--line); text-decoration: none; }
.od-downloads .od-item:last-child { border-bottom: 0; }
.od-downloads .od-name { white-space: normal; }

.acc-pagination { margin: 14px 14px 0; font-size: 12.5px; }
.acc-pagination ul { list-style: none; margin: 0; padding: 0; display: flex; gap: 6px; justify-content: center; }
.acc-pagination li a, .acc-pagination li span {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 32px; height: 32px; padding: 0 8px;
  border-radius: 9px; border: 1px solid var(--line);
  background: #fff; color: var(--ink2); text-decoration: none;
}
.acc-pagination li span.current { background: var(--ink); border-color: var(--ink); color: #fff; }

.moya-account .acc-content a.acc-link,
.moya-account .acc-switch a,
.moya-account .acc-auth a { text-decoration: none; }
.moya-account .acc-switch a,
.moya-account .acc-auth .acc-link { color: var(--red); font-weight: 600; }

/* ---------------------------------------------------------- orders / downloads tables */
.acc-content table.shop_table,
.acc-content .woocommerce-orders-table,
.acc-content .woocommerce-table--order-downloads {
  width: 100%; border: 0; border-collapse: collapse;
  font-size: 12.5px; margin: 0 0 14px;
}
.acc-content .shop_table thead { display: none; }
.acc-content .shop_table tr { display: block; padding: 12px 0; border-bottom: 1px solid var(--line); }
.acc-content .shop_table tr:last-child { border-bottom: 0; }
.acc-content .shop_table td {
  display: block; padding: 3px 0; border: 0;
  color: var(--ink2); text-align: left;
}
.acc-content .shop_table td::before {
  content: attr(data-title) " ";
  display: inline-block;
  font-size: 10.5px; letter-spacing: .06em; text-transform: uppercase;
  color: var(--ink3); margin-right: 6px;
}
.acc-content .shop_table td.woocommerce-orders-table__cell-order-number {
  font-size: 13.5px; font-weight: 600; color: var(--ink); padding-bottom: 6px;
}
.acc-content .shop_table td.woocommerce-orders-table__cell-order-number::before { content: ""; margin: 0; }

/* My Orders table (fallback template) → order card, storefront style:
   row 1: order number + date —
   row 2: product images left, price & items right —
   row 3: status below the images, View order button bottom-right. */
.acc-content .woocommerce-orders-table {
  background: transparent; border: 0; box-shadow: none; padding: 0;
}
.acc-content .woocommerce-orders-table tbody tr {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas:
    "num date"
    "img total"
    "status act";
  column-gap: 12px;
  padding: 13px 14px 12px;
  background: #fff; border-radius: 14px;
  box-shadow: var(--shadow-card); border: 1px solid rgba(22, 20, 30, .05);
  margin-bottom: 10px;
}
.acc-content .woocommerce-orders-table tbody tr:last-child { margin-bottom: 0; }
.acc-content .woocommerce-orders-table td::before { content: none; }
/* any extra column (e.g. parcel-tracking plugins) flows full width below */
.acc-content .woocommerce-orders-table tbody td:not(.woocommerce-orders-table__cell-order-number):not(.woocommerce-orders-table__cell-order-date):not(.woocommerce-orders-table__cell-order-products):not(.woocommerce-orders-table__cell-order-total):not(.woocommerce-orders-table__cell-order-status):not(.woocommerce-orders-table__cell-order-actions) {
  grid-column: 1 / -1;
  padding-top: 8px;
}
.acc-content .woocommerce-orders-table td.woocommerce-orders-table__cell-order-number {
  grid-area: num; align-self: center;
}
.acc-content .woocommerce-orders-table td.woocommerce-orders-table__cell-order-number a {
  color: var(--ink); font-size: 13.5px; font-weight: 700;
}
.acc-content .woocommerce-orders-table td.woocommerce-orders-table__cell-order-date {
  grid-area: date; justify-self: end; align-self: center;
  font-size: 10.5px; color: var(--ink3);
}
.acc-content .woocommerce-orders-table td.woocommerce-orders-table__cell-order-products {
  grid-area: img; align-self: start; justify-self: start; padding-top: 10px;
}
.acc-content .woocommerce-orders-table td.woocommerce-orders-table__cell-order-products .moya-order-cell-thumbs img {
  width: 54px; height: 66px; border-radius: 9px;
}
.acc-content .woocommerce-orders-table .moya-order-cell-thumbs { display: flex; align-items: center; gap: 5px; flex-wrap: wrap; }
.acc-content .woocommerce-orders-table .moya-order-cell-thumbs img {
  object-fit: cover; background: #EDEDEF; flex: 0 0 auto;
}
.acc-content .woocommerce-orders-table td.woocommerce-orders-table__cell-order-total {
  grid-area: total; justify-self: end; text-align: right;
  font-size: 11px; color: var(--ink3); padding-top: 10px;
}
.acc-content .woocommerce-orders-table td.woocommerce-orders-table__cell-order-total .woocommerce-Price-amount {
  display: block; font-size: 15px; font-weight: 700; color: var(--red);
}
.acc-content .woocommerce-orders-table td.woocommerce-orders-table__cell-order-status {
  grid-area: status; justify-self: start; align-self: center; padding-top: 10px;
}
.acc-content .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions {
  grid-area: act; justify-self: end; align-self: center; padding-top: 10px;
}
/* parcel-tracking numbers under the thumbnails: quiet links */
.acc-content .woocommerce-orders-table tbody td.woocommerce-orders-table__cell-order-tracking {
  font-size: 11px;
}
.acc-content .woocommerce-orders-table tbody td.woocommerce-orders-table__cell-order-tracking a {
  color: var(--ink2); text-decoration: none;
}
/* order number + any plugin links in the cards: ink, never red underline */
.acc-content .woocommerce-orders-table tbody td a { color: var(--ink2); text-decoration: none; }
.acc-content .woocommerce-orders-table tbody td.woocommerce-orders-table__cell-order-number a {
  color: var(--ink); font-weight: 700;
}
.acc-content .woocommerce-orders-table tbody td.woocommerce-orders-table__cell-order-actions a.button {
  color: var(--ink);
}

/* Order details table: thumbnail + name + price all on one line,
   long titles truncate with an ellipsis */
.acc-content .woocommerce-order-details .shop_table {
  display: block; width: 100%;
}
/* WooCommerce draws border-top/bottom on every shop_table cell — after the
   flex re-layout those become stray floating line segments. Kill them. */
.acc-content .woocommerce-order-details .shop_table th,
.acc-content .woocommerce-order-details .shop_table td {
  border: 0;
}
.acc-content .woocommerce-order-details .shop_table tbody,
.acc-content .woocommerce-order-details .shop_table tfoot {
  display: block;
}
.acc-content .woocommerce-order-details tbody tr {
  display: flex; align-items: center; gap: 10px;
  padding: 10px 0;
}
.acc-content .woocommerce-order-details td.product-name {
  display: flex; align-items: center; gap: 10px;
  flex: 1 1 auto; min-width: 0; white-space: nowrap;
}
.acc-content .woocommerce-order-details td.product-name a {
  display: block; flex: 0 1 auto; min-width: 0;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.acc-content .woocommerce-order-details td.product-total {
  flex: 0 0 auto; margin-left: auto; align-self: center;
  text-align: right; font-size: 13px; font-weight: 600; color: var(--ink);
}
/* Summary rows (Subtotal / Shipping / Total / Payment method):
   label and value on ONE line, value sits right after the colon */
.acc-content .woocommerce-order-details tfoot tr {
  display: flex; align-items: baseline; justify-content: flex-start;
  gap: 6px;
  padding: 9px 0;
  border-bottom: 1px solid var(--line);
}
.acc-content .woocommerce-order-details tfoot tr:last-child { border-bottom: 0; }
.acc-content .woocommerce-order-details tfoot th,
.acc-content .woocommerce-order-details tfoot td {
  display: block; float: none; border: 0; padding: 0;
  font-size: 12px; line-height: 1.4;
}
.acc-content .woocommerce-order-details tfoot th {
  text-align: left; font-weight: 600;
  text-transform: uppercase; letter-spacing: .06em;
  font-size: 11px; color: var(--ink3);
  width: auto; white-space: nowrap;
}
.acc-content .woocommerce-order-details tfoot td {
  margin: 0; text-align: left;
  font-weight: 600; color: var(--ink);
}
.moya-order-item-thumb {
  flex: 0 0 54px; width: 54px; height: 66px;
  border-radius: 9px; overflow: hidden;
  background: #EDEDEF; display: inline-block;
}
.moya-order-item-thumb img {
  width: 100%; height: 100%; object-fit: cover; display: block;
}
.acc-content .woocommerce-orders-table td.woocommerce-orders-table__cell-order-total {
  grid-area: total; justify-self: end; text-align: right;
  font-size: 11px; color: var(--ink3); padding-top: 10px;
}
.acc-content .woocommerce-orders-table td.woocommerce-orders-table__cell-order-total .woocommerce-Price-amount {
  display: block; font-size: 15px; font-weight: 700; color: var(--red);
}
.acc-content .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions {
  grid-area: act; justify-self: end; padding-top: 10px;
}
.acc-content .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions .button {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 34px; padding: 0 18px;
  background: #fff; border: 1px solid var(--line); border-radius: 18px;
  color: var(--ink); font-size: 12px; font-weight: 500; text-decoration: none;
  box-shadow: none;
}

/* Any leftover WooCommerce table (e.g. before the theme's own orders
   template loads) is forced into the card style on every screen width —
   never the ORDER / DATE / STATUS / TOTAL / ACTIONS table. */
@media (min-width: 760px) {
  .acc-content .shop_table td { font-size: 12.5px; }
}

/* status pill */
.acc-content mark.order-status,
.acc-content .woocommerce-orders-table__cell-order-status {
  font-size: 11px; font-weight: 600;
}
.acc-content mark.order-status {
  display: inline-block; padding: 3px 9px; border-radius: 20px;
  background: #EEF7F1; color: #1B7B45;
}
.acc-content mark.order-status.status-pending,
.acc-content mark.order-status.status-on-hold { background: #FFF6E5; color: #8A5A00; }
.acc-content mark.order-status.status-failed,
.acc-content mark.order-status.status-cancelled { background: #FDEEEC; color: #A02B20; }
.acc-content mark.order-status.status-completed { background: #EEF7F1; color: #1B7B45; }

/* ---------------------------------------------------------- addresses */
/* Each address card takes the FULL row, one below the other — WC's col-1/col-2
   float + 48% width rules are neutralised on every screen width. */
.acc-content .woocommerce-Addresses,
.acc-content .col2-set.addresses {
  display: block !important;
  float: none; width: 100%;
}
.acc-content .woocommerce-Addresses::before,
.acc-content .woocommerce-Addresses::after { content: none; }
.acc-content .woocommerce-Address,
.acc-content .woocommerce-Addresses .col-1,
.acc-content .woocommerce-Addresses .col-2 {
  display: block !important;
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 12px !important;
  padding: 14px !important;
  border: 1px solid var(--line); border-radius: 12px;
  background: #FCFCFD;
  box-sizing: border-box;
}
.acc-content .woocommerce-Addresses .woocommerce-Address:last-child { margin-bottom: 0; }
.acc-content .woocommerce-Address-title {
  display: flex; align-items: center; justify-content: space-between;
  gap: 10px; margin-bottom: 8px;
}
.acc-content .woocommerce-Address-title h2,
.acc-content .woocommerce-Address-title h3 { font-size: 13px; margin: 0; color: var(--ink); white-space: nowrap; }
.acc-content .woocommerce-Address-title a.edit {
  flex: 0 0 auto; white-space: nowrap;
  font-size: 12px; font-weight: 600; text-decoration: none;
  color: var(--red);
}
/* intro copy above the two address cards */
.acc-content > .woocommerce-info,
.acc-content .addresses + p, .acc-content p.addresses-intro { font-size: 12.5px; color: var(--ink3); }
.acc-content address { font-style: normal; font-size: 12.5px; line-height: 1.7; color: var(--ink2); }

/* ---------------------------------------------------------- forms (account details, addresses) */
.acc-content form .form-row,
.acc-content form .woocommerce-form-row,
.acc-auth .acc-field { margin: 0 0 12px; padding: 0; }
.acc-content form label,
.acc-auth label {
  display: block; font-size: 11.5px; font-weight: 600; color: var(--ink);
  margin-bottom: 5px; letter-spacing: .01em;
}
.acc-content form input.input-text,
.acc-content form input[type="text"],
.acc-content form input[type="email"],
.acc-content form input[type="password"],
.acc-content form input[type="tel"],
.acc-content form select,
.acc-auth input.input-text {
  width: 100%; min-height: 44px; padding: 10px 12px;
  border: 1px solid #E2E2E7; border-radius: 11px;
  background: #FCFCFD; font-size: 14px; color: var(--ink);
  transition: border-color .18s, box-shadow .18s, background .18s;
}
.acc-content form select { appearance: none; background-image: none; }
.acc-content form input:focus,
.acc-content form select:focus,
.acc-auth input:focus {
  outline: 0; background: #fff;
  border-color: var(--red);
  box-shadow: 0 0 0 3px rgba(226, 58, 46, .12);
}
.acc-content form fieldset { border: 0; padding: 0; margin: 0 0 16px; }
.acc-content form legend { font-size: 13px; font-weight: 600; color: var(--ink); padding: 0; margin-bottom: 10px; }
.acc-content form .required { color: var(--red); }

/* ---------------------------------------------------------- auth screen */
/* logged out: no content card — the auth card is the card */
.moya-account.is-guest .acc-content {
  background: transparent; border: 0; box-shadow: none; padding: 0;
}
.acc-auth { padding: 18px 16px 8px; }
.acc-auth-card {
  max-width: 430px; margin: 0 auto;
  background: #fff; border-radius: 16px;
  border: 1px solid rgba(22, 20, 30, .05);
  box-shadow: 0 18px 40px -30px rgba(22, 20, 30, .55);
  padding: 22px 18px 20px;
}
.acc-auth-brand {
  font-family: var(--serif); font-size: 21px; font-weight: 700;
  letter-spacing: .02em; text-align: center; color: var(--ink);
}
.acc-auth-lead {
  font-size: 12px; text-align: center; color: var(--ink3);
  margin: 6px 0 16px; line-height: 1.6;
}

.acc-tabs {
  display: flex; gap: 4px; padding: 4px;
  background: #F4F3F5; border-radius: 12px; margin-bottom: 16px;
}
.acc-tab {
  flex: 1 1 0; min-height: 36px; border: 0; border-radius: 9px;
  background: transparent; color: var(--ink2);
  font-size: 12.5px; font-weight: 600; cursor: pointer;
  transition: background .2s, color .2s, box-shadow .2s;
}
.acc-tab.is-on { background: #fff; color: var(--ink); box-shadow: 0 1px 4px rgba(22, 20, 30, .1); }

.acc-panel[hidden] { display: none; }
.acc-field label { display: block; font-size: 11.5px; font-weight: 600; color: var(--ink); margin-bottom: 5px; }
.acc-field .req { color: var(--red); }
.acc-pass { position: relative; display: block; }
.acc-pass input { padding-right: 44px; }
.acc-eye {
  position: absolute; right: 6px; top: 50%; transform: translateY(-50%);
  width: 34px; height: 34px; display: grid; place-items: center;
  border: 0; background: transparent; color: var(--ink3); cursor: pointer; border-radius: 8px;
}
.acc-eye:active { background: #F3F3F5; }

.acc-row-between { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 4px 0 16px; }
.acc-check { display: inline-flex; align-items: center; gap: 7px; font-size: 12px; color: var(--ink2); margin: 0; }
.acc-check input { width: 16px; height: 16px; accent-color: var(--red); }
.acc-link { color: var(--red); font-size: 12px; }
.acc-link:hover { text-decoration: underline; }

.acc-btn {
  width: 100%; min-height: 46px; border: 0; border-radius: 12px;
  background: linear-gradient(180deg, var(--red-2), var(--red));
  color: #fff; font-size: 14px; font-weight: 600; letter-spacing: .01em;
  box-shadow: 0 10px 22px -14px rgba(226, 58, 46, .95);
  cursor: pointer; transition: transform .15s, box-shadow .15s;
}
.acc-btn:active { transform: translateY(1px); box-shadow: 0 6px 16px -14px rgba(226, 58, 46, .9); }

.acc-note { font-size: 11.5px; color: var(--ink3); margin: 0 0 12px; }
.acc-legal { font-size: 11px; color: var(--ink3); line-height: 1.65; margin: 0 0 14px; }
.acc-switch { text-align: center; font-size: 12px; color: var(--ink2); margin: 14px 0 0; }
.acc-switch a { color: var(--red); font-weight: 600; }

/* notices inside the account shell */
.moya-account .woocommerce-message,
.moya-account .woocommerce-info,
.moya-account .woocommerce-error {
  margin: 0 16px 14px; padding: 12px 14px; border-radius: 11px;
  border: 1px solid transparent; font-size: 12.5px; list-style: none;
}
.moya-account .woocommerce-message { background: #EEF7F1; border-color: #D3ECD9; color: #1B7B45; }
.moya-account .woocommerce-info { background: #F1F4FA; border-color: #DCE4F3; color: #2B4A7E; }
.moya-account .woocommerce-error { background: #FDEEEC; border-color: #F6D6D2; color: #A02B20; }

/* lost password / reset screens keep the same card rhythm */
.woocommerce-account .woocommerce-form-reset_password,
.woocommerce-account .woocommerce-form-lost_password { max-width: 430px; }

/* ---------------------------------------------------------- shipping notices */
/* Endpoint: /my-account/shipping-notices/ — same cards as the Me page, but
   inside the white content card, so the outer shadow is dropped. */
.acc-title { font-size: 15px; color: var(--ink); margin: 0 0 12px; }
.acc-none { font-size: 12.5px; color: var(--ink3); margin: 0; }
.acc-content .notice-list { gap: 10px; }
.acc-content .notice-item {
  box-shadow: none;
  border: 1px solid var(--line);
  padding: 12px 13px 13px;
}
.acc-content .notice-head { gap: 7px; }
.notice-top { display: flex; align-items: center; gap: 8px; margin: 0 0 12px; flex-wrap: wrap; }
.notice-top .acc-title { margin: 0; }
.notice-section + .notice-section { margin-top: 18px; }
.notice-sub {
  font-size: 9px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
  color: var(--ink3); margin: 0 0 10px;
}
.notice-new {
  font-size: 9px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
  padding: 3px 8px; border-radius: 9px;
  background: #FFF0EE; color: #D63A2E;
}
/* "Mark all as read" — pushed to the right edge of the heading row. */
.notice-read-all {
  margin-left: auto;
  flex-shrink: 0;
  white-space: nowrap;
  font-size: 11px; font-weight: 600; letter-spacing: .02em;
  color: var(--ink3); text-decoration: none;
  padding: 4px 2px; border-bottom: 1px solid transparent;
  transition: color .18s, border-color .18s;
}
.notice-read-all:hover, .notice-read-all:focus-visible {
  color: var(--ink); border-bottom-color: var(--line);
}
.notice-empty {
  text-align: center; padding: 22px 12px 24px;
}
.notice-empty p { margin: 0; font-size: 13px; color: var(--ink); font-weight: 600; }
.notice-empty .notice-empty-sub { margin: 8px 0 16px; font-size: 11.5px; font-weight: 400; line-height: 1.8; color: var(--ink3); }
.notice-more {
  margin: 12px 2px 0;
  font-size: 11px; line-height: 1.7; color: var(--ink3);
  text-align: center;
}
.acc-content .notice-cta {
  box-shadow: none;
  border: 1px solid var(--line);
  border-radius: 12px;
}


/* ---------------------------------------------------------- order manager (vom) */
/* voorluxe-order-manager prints the customer's whole shipping feed on this
   endpoint. Keep the tray to the 5 newest notices — older ones stay on their
   order page. If the plugin ever changes its markup, update this selector. */
.vom-notice-list > .vom-notice:nth-child(n + 6) { display: none; }

/* The plugin also injects its card on the Order notices endpoint (with an
   empty "no shipping notices" state). That page is the theme's own order
   module, so the plugin block is dropped there — one heading per page. */
.acc-content--order-notices .vom-notices { display: none; }
