.product-image-wrap,
.product-detail-image {
  background: radial-gradient(circle at 20% 10%, #273360 0, #151b34 48%, #0d1122 100%);
  position: relative;
  container-type: inline-size;
}

.product-brand-panel {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 18px;
  color: #fff;
  text-align: center;
  background: radial-gradient(circle at 20% 10%, #273360 0, #151b34 48%, #0d1122 100%);
}

.product-brand-panel.over-image {
  align-items: flex-start;
  justify-content: flex-end;
  padding: 12px 14px;
  background: linear-gradient(180deg, transparent 40%, rgba(8, 12, 28, .68) 100%);
}

/* Product photos are the hero. Keep Moneylogs as a quiet bottom watermark. */
.product-brand-panel.over-image .shine-wordmark {
  width: auto;
  max-width: 58%;
  font-size: clamp(10px, 4cqw, 13px);
  letter-spacing: .07em;
  opacity: .68;
  animation: none;
  background-position: 50% 0;
}

.product-brand-panel.over-image small {
  display: none;
}

.shine-wordmark {
  display: inline-block;
  width: 100%;
  max-width: 100%;
  color: #fff;
  font-size: clamp(13px, 7.2cqw, 19px);
  font-weight: 950;
  letter-spacing: .09em;
  line-height: 1.05;
  white-space: nowrap;
  background: linear-gradient(105deg, #dbe2ff 8%, #fff 36%, #7458ff 48%, #fff 60%, #dbe2ff 88%);
  background-size: 240% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: wordmark-shine 3.2s ease-in-out infinite;
}

.product-brand-panel small {
  display: block;
  max-width: 100%;
  margin-top: 13px;
  color: #eef1ff;
  font-size: 12px;
  font-weight: 750;
  letter-spacing: .01em;
  line-height: 1.28;
}

.detail-brand .shine-wordmark {
  font-size: clamp(24px, 7.2cqw, 38px);
}

.detail-brand small {
  max-width: 80%;
  margin-top: 20px;
  font-size: clamp(14px, 2vw, 22px);
}

@keyframes wordmark-shine {
  0%, 24% { background-position: 120% 0; }
  68%, 100% { background-position: -120% 0; }
}

@media (prefers-reduced-motion: reduce) {
  .shine-wordmark {
    animation: none;
    background-position: 50% 0;
  }
}

@media (max-width: 600px) {
  .product-card .shine-wordmark {
    font-size: clamp(12px, 7.2cqw, 15px);
    letter-spacing: .07em;
  }
}

.product-card-buy {
  margin-top: 14px;
}

.product-card-buy .button {
  width: 100%;
  min-height: 40px;
}

.purchase-box form {
  grid-template-columns: 100px 1fr 1fr;
}

.signup-cta {
  margin-bottom: 12px;
}

@media (max-width: 600px) {
  .purchase-box form {
    grid-template-columns: 80px 1fr;
  }

  .purchase-box form .primary {
    grid-column: 1 / -1;
  }
}

/* Moneylogs launch skin: keeps the catalog, help desk and footer on the same dark canvas. */
:root { --ink: #f5f1ff; --muted: #b7aec6; --paper: #0d0b13; --card: #17131f; --line: #342943; --blue: #a562ff; --blue2: #6946ee; --shadow: 0 22px 60px rgba(0,0,0,.34); }
body { background: #0d0b13; color: var(--ink); }
main { min-height: calc(100vh - 76px); background: transparent; }
input, select, textarea { color: #f9f7ff; border-color: #40334e; background: #17131f; }
input::placeholder, textarea::placeholder { color: #938a9f; }
input:focus, select:focus, textarea:focus { border-color: #a562ff; box-shadow: 0 0 0 3px rgba(165,98,255,.16); }
.projects-menu { position: relative; }.projects-menu summary { list-style: none; cursor: pointer; padding: 9px 15px; border-radius: 8px; background: #17151d; color: #f8f6ff; }.projects-menu summary::-webkit-details-marker { display: none; }.projects-menu nav { position: absolute; top: calc(100% + 8px); left: 0; min-width: 160px; padding: 8px; border: 1px solid #3b2b51; border-radius: 10px; background: #17131d; box-shadow: var(--shadow); }.projects-menu nav a { display: block; padding: 9px 10px; border-radius: 7px; white-space: nowrap; }.projects-menu nav a:hover { background: #6d42dd; }
.site-footer { max-width: none; margin: 0; padding: 38px max(24px, calc((100vw - 1180px)/2)); color: #b7aec6; background: #09080d; border-color: #2d2437; }.site-footer nav { display: flex; flex-wrap: wrap; gap: 16px 22px; align-items: center; }.site-footer nav a:hover { color: #c895ff; }
.dark-page { min-height: calc(100vh - 76px); padding-bottom: 72px; color: #f7f2ff; background: radial-gradient(circle at 50% -18%, rgba(126, 69, 220, .2), transparent 42%), #0d0b13; }.dark-page .page-hero { padding-top: 70px; }.dark-page .page-hero p { color: #b7aec6; }
.catalog-page .filters, .catalog-page .product-card, .support-form, .ticket-card, .review-card, .policy-card { color: #f7f2ff; border-color: #382b48; background: #17131f; }.catalog-page .product-card-body { background: #17131f; }.catalog-page .product-card h3, .catalog-page .product-card .product-card-bottom strong { color: #fff; }.catalog-page .filters label { color: #c9c0d6; }.catalog-page .empty-state, .dark-page .empty-state { color: #b7aec6; border-color: #4a3c5b; background: #15111b; }.catalog-page .text-link, .dark-page .text-link { color: #c895ff; }
.support-layout { max-width: 1180px; margin: 0 auto; padding: 0 24px; display: grid; grid-template-columns: minmax(330px, .82fr) 1.18fr; gap: 28px; }.support-form { display: grid; gap: 14px; align-self: start; padding: 24px; border: 1px solid; border-radius: 18px; }.support-form h2 { margin: 0 0 4px; }.support-form label { display: grid; gap: 6px; color: #c7bed2; font-size: 13px; font-weight: 750; }.support-form label small { color: #a69bb5; font-weight: 500; }.support-form textarea { min-height: 145px; resize: vertical; }.ticket-list { min-width: 0; }.ticket-list .section-heading { margin-bottom: 14px; }.ticket-card { margin-bottom: 12px; padding: 18px; border: 1px solid; border-radius: 15px; }.ticket-card > div { display: grid; grid-template-columns: auto 1fr; gap: 6px 10px; align-items: center; }.ticket-card strong { min-width: 0; overflow-wrap: anywhere; }.ticket-card small { grid-column: 2; color: #b7aec6; }.ticket-card p { margin: 13px 0 10px; white-space: pre-wrap; color: #ddd5e8; }.ticket-status { display: inline-block; padding: 4px 8px; border-radius: 99px; color: #d7d0e3; background: #342942; font-size: 11px; font-weight: 800; text-transform: uppercase; }.ticket-status.open { color: #ffe6a1; background: #5a4320; }.ticket-status.in_review { color: #cad7ff; background: #27365d; }.ticket-status.resolved { color: #bbf6d8; background: #24513e; }
.review-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }.review-card { min-height: 190px; padding: 22px; border: 1px solid; border-radius: 18px; display: flex; flex-direction: column; }.review-card p { margin: 13px 0; color: #ddd5e8; font-size: 16px; }.review-card strong { margin-top: auto; }.review-card small { color: #ad9fc1; margin-top: 3px; }.review-stars { color: #e8b65c; letter-spacing: 2px; }.vouch-preview { padding-top: 28px; }.all-reviews { max-width: 1180px; margin: 0 auto; padding: 0 24px; }
.policy-card { max-width: 760px; margin: 0 auto; padding: 30px; border: 1px solid; border-radius: 18px; color: #d8d0e4; font-size: 17px; }.policy-card a { color: #c895ff; font-weight: 750; }.policy-note { color: #998da9; font-size: 13px; }
.admin-panel { background: #17131f; border-color: #382b48; }.admin-table th, .admin-table td, .audit-list p { border-color: #382b48; }.admin-table th, .admin-table td small { color: #b7aec6; }.admin-notice.success { color: #aaf1d1; background: #153c31; border-color: #2e8060; }.admin-notice.error { color: #ffd0d0; background: #4d252d; border-color: #8e424d; }
.metric-grid article { color: #fff; background: #17131f; border-color: #382b48; }.metric-grid article strong { color: #fff; }.metric-grid article span, .metric-grid article small { color: #c9c1d8; }
.admin-tabs { display: flex; flex-wrap: wrap; gap: 8px; }.admin-tabs a { padding: 8px 11px; border: 1px solid #49355e; border-radius: 9px; color: #d8c8eb; font-size: 13px; font-weight: 800; }.admin-tabs a:hover, .admin-tabs a.active { color: #fff; border-color: #a562ff; background: #6c42d9; }
.checkout-shell .auth-card { color: #f9f7ff; background: #17131f; border-color: #48365c; }.checkout-shell .auth-card h2, .checkout-shell .auth-card strong { color: #fff; }.checkout-shell .feature-list, .checkout-shell .summary-lines span, .checkout-shell label { color: #c9c1d8; }.checkout-shell .summary-lines { border-color: #463353; }.checkout-shell .button.ghost { color: #fff; background: #17131f; border-color: #523d67; }
.payment-picker { display: grid; gap: 10px; margin: 4px 0; padding: 14px; border: 1px solid #49375c; border-radius: 13px; }.payment-picker legend { padding: 0 6px; color: #cfc3de; font-size: 13px; font-weight: 800; }.payment-type, .payment-secondary button { padding: 11px 13px; border: 1px solid #4e3a62; border-radius: 10px; color: #eee8fa; background: #211a2a; font: inherit; font-size: 13px; font-weight: 800; cursor: pointer; }.payment-type.selected, .payment-type:hover { border-color: #a562ff; background: #603ac6; color: #fff; }.payment-secondary { display: flex; flex-wrap: wrap; gap: 8px; }.payment-secondary button { padding: 8px 10px; color: #d4c5e6; background: transparent; }
.crypto-picker-modal[hidden] { display: none; }.crypto-picker-modal { position: fixed; inset: 0; z-index: 120; display: grid; place-items: center; padding: 22px; }.crypto-picker-backdrop { position: absolute; inset: 0; border: 0; background: rgba(4, 2, 8, .8); backdrop-filter: blur(10px); cursor: default; }.crypto-picker-dialog { position: relative; z-index: 1; width: min(100%, 580px); padding: 30px; border: 1px solid #6f4b91; border-radius: 22px; color: #f8f5ff; background: linear-gradient(145deg, #241a30, #100c16); box-shadow: 0 30px 90px rgba(0, 0, 0, .62); }.crypto-picker-dialog h2 { margin: 6px 0 10px; font-size: clamp(27px, 5vw, 38px); }.crypto-picker-dialog > p { margin: 0 0 21px; color: #cfc4db; line-height: 1.5; }.crypto-picker-close { position: absolute; top: 14px; right: 14px; display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid #59406f; border-radius: 50%; color: #e5d9f4; background: #1a1322; font-size: 23px; cursor: pointer; }.crypto-modal-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-bottom: 20px; }.crypto-modal-option { display: grid; gap: 5px; min-height: 92px; padding: 15px; border: 1px solid #4a365e; border-radius: 13px; color: #f8f4ff; text-align: left; background: #18111f; cursor: pointer; transition: .18s ease; }.crypto-modal-option strong { font-size: 15px; }.crypto-modal-option small { color: #bfaed1; font-size: 12px; }.crypto-modal-option:hover, .crypto-modal-option.selected { border-color: #ac6bff; background: linear-gradient(135deg, #6638c6, #42216f); transform: translateY(-2px); }.crypto-modal-option.selected small { color: #ece4ff; }.crypto-picker-dialog > .button { width: 100%; }
.payment-card .wallet-card { color: #f9f7ff; border-color: #694f91; background: linear-gradient(135deg, #211a32, #17131f); }.payment-card .wallet-card span { color: #cdb4ff; }.payment-card .wallet-card code { color: #fff; }.payment-card .payment-qr { color: #d3c5e0; border-color: #48365a; background: #17131f; }.payment-card .payment-qr img { width: 184px; height: 184px; image-rendering: pixelated; }.payment-card .payment-warning { color: #d5cce2; }.payment-card .send-exactly button { color: #eee8ff; border-color: #a562ff; background: #2b2140; }
.checkout-email-note { display: block; margin: -5px 0 4px; color: #cfc3df; font-size: 12px; line-height: 1.45; }
.checkout-shell .payment-card { max-width: 510px; padding: 28px; background: linear-gradient(145deg, #1e172a 0%, #15111d 100%); border: 1px solid #5a4373; box-shadow: 0 24px 65px rgba(0, 0, 0, .34); }
.payment-card .summary-lines p { color: #d7cee4; }.payment-card .summary-lines p strong { color: #fff; }.payment-card .summary-lines p span { color: #cfc4de; }
.payment-card .wallet-card { margin-top: 18px; padding: 16px; border-radius: 14px; }.payment-card .payment-qr { margin: 16px 0; padding: 16px; border-radius: 14px; background: #110d18; }.payment-card .payment-qr span { color: #d6c8e3; }.payment-card .payment-warning { margin: 12px 0; line-height: 1.55; }
.payment-card .stack-form { margin-top: 18px; }.payment-card .stack-form[hidden] { display: none; }
.payment-card .payment-confirmed { grid-template-columns: auto 1fr; margin-top: 18px; padding: 18px; border: 1px solid #3bc895; border-radius: 14px; color: #dbfff0; background: linear-gradient(135deg, #123f35, #122a31); box-shadow: none; }.payment-card .payment-confirmed[hidden] { display: none; }.payment-card .payment-confirmed > span { background: #22b77e; color: #061d15; }.payment-card .payment-confirmed strong { color: #fff; font-size: 18px; }.payment-card .payment-confirmed p { margin: 4px 0 6px; color: #d1f8e7; line-height: 1.45; }.payment-card .payment-confirmed small { color: #9deacb; }.payment-card .payment-confirmed .button { grid-column: 1 / -1; margin-top: 3px; }

/* Final Moneylogs palette — purple for navigation/action, money-green only for success and balances. */
:root { --ink: #f7f3ff; --muted: #bdb2ca; --paper: #0d0a12; --card: #18121f; --line: #3d2d4b; --blue: #9a63ff; --blue2: #6b43dc; --shadow: 0 22px 60px rgba(0, 0, 0, .42); }
body { background: #0d0a12; }
main { background: radial-gradient(circle at 82% 8%, rgba(122, 72, 218, .11), transparent 30%), radial-gradient(circle at 8% 30%, rgba(47, 169, 117, .06), transparent 23%), transparent; }
.site-header { background: rgba(14, 10, 20, .97); border-color: #38264a; }.desktop-nav a, .header-actions .nav-account, .projects-menu summary { background: #1b1424; }.desktop-nav a:hover, .header-actions .nav-account:hover, .projects-menu nav a:hover, .dashboard-menu nav a:hover, .dashboard-menu nav button:hover { background: linear-gradient(135deg, #6135c9, #9258ed); }.dashboard-menu summary { border-color: #8559cc; background: #1a1322; }.dashboard-menu nav, .projects-menu nav { border-color: #4a3261; background: #16101f; }
.explore-menu { position: relative; }.explore-menu summary { list-style: none; cursor: pointer; padding: 9px 15px; border-radius: 8px; color: #f8f6ff; background: #1b1424; font-weight: 650; }.explore-menu summary::-webkit-details-marker { display: none; }.explore-menu nav { position: absolute; top: calc(100% + 8px); left: 0; min-width: 150px; padding: 8px; border: 1px solid #4a3261; border-radius: 10px; background: #16101f; box-shadow: var(--shadow); }.explore-menu nav a { display: block; padding: 9px 10px; border-radius: 7px; white-space: nowrap; }.explore-menu nav a:hover { background: linear-gradient(135deg, #6135c9, #9258ed); }
.site-footer { color: #c0b5ca; background: #09070d; border-color: #392545; }.site-footer a { color: #c9b4f7; }.site-footer nav a:hover { color: #fff; }
.button.primary, .hero-search .button, .copy-wallet { background: linear-gradient(135deg, #7140db 0%, #a55cf2 100%); box-shadow: 0 10px 26px rgba(128, 68, 224, .22); }.button.primary:hover, .hero-search .button:hover, .copy-wallet:hover { filter: brightness(1.14); }.button.ghost { background: #17111f; border-color: #604372; }.button.ghost:hover { background: #251a30; border-color: #a66aff; }
.auth-copy, .page-hero, .admin-heading { text-shadow: 0 2px 22px rgba(0, 0, 0, .24); }.auth-copy p, .page-hero p, .admin-heading p { color: #c9bed5; }
.auth-shell .auth-card { color: #f7f3ff; background: linear-gradient(145deg, #211829 0%, #15101c 100%); border-color: #5a3d70; }.auth-shell .auth-card h2, .auth-shell .auth-card strong { color: #fff; }.auth-shell .auth-card label, .auth-shell .auth-card .form-foot, .auth-shell .auth-card small, .auth-shell .divider { color: #d2c7dd; }.auth-shell .auth-card input { background: #110d17; border-color: #5a3c70; color: #fff; }.auth-shell .auth-card .form-foot a { color: #c39aff; }
.checkout-shell .auth-card, .checkout-shell .payment-card { background: linear-gradient(145deg, #211829 0%, #15101c 100%); border-color: #5a3d70; }.checkout-shell .auth-card h2 { color: #fff; }.checkout-shell .feature-list, .checkout-shell .summary-lines span, .checkout-shell label, .checkout-email-note { color: #d2c7dd; }.checkout-shell input, .checkout-shell select, .checkout-shell textarea { background: #110d17; border-color: #5a3c70; }.checkout-shell .summary-lines { border-color: #503663; }
.catalog-page .filters, .catalog-page .product-card, .support-form, .ticket-card, .review-card, .policy-card, .admin-panel, .metric-grid article { background: linear-gradient(150deg, #1b1423, #141019); border-color: #49345c; }.catalog-page .product-card-body { background: #17111f; }.catalog-page .filters:hover, .catalog-page .product-card:hover, .review-card:hover { border-color: #8152ab; box-shadow: 0 16px 42px rgba(0, 0, 0, .24); }
.catalog-page .filters input, .catalog-page .filters select, .support-form input, .support-form select, .support-form textarea { background: #110d17; border-color: #503663; }.catalog-page .text-link, .dark-page .text-link, .admin-table a { color: #c39aff; }.ticket-status.resolved { color: #c6ffe1; background: #1f5a42; }.ticket-status.open { color: #ffe7a8; background: #674620; }
.category-browser { max-width: 1180px; margin: 0 auto 30px; padding: 0 24px; display: grid; grid-template-columns: repeat(auto-fit, minmax(155px, 1fr)); gap: 10px; }.category-browser-card { min-height: 80px; padding: 14px; border: 1px solid #49345c; border-radius: 13px; color: #f7f2ff; background: linear-gradient(145deg, #1b1423, #141019); transition: .18s ease; }.category-browser-card:hover, .category-browser-card.active { border-color: #a562ff; background: linear-gradient(135deg, #321e4b, #1c1528); transform: translateY(-2px); }.category-browser-card span { display: block; font-weight: 850; line-height: 1.2; }.category-browser-card small { display: block; margin-top: 6px; color: #bcaed0; font-size: 12px; }
.payment-card .wallet-card { border-color: #7a55a2; background: linear-gradient(135deg, #2a1e38, #171120); }.payment-card .payment-qr { border-color: #58406b; background: #0f0b15; }.payment-card .payment-confirmed { border-color: #4adc9d; background: linear-gradient(135deg, #124536, #102b2b); }.payment-card .payment-confirmed .button { background: linear-gradient(135deg, #21895f, #42c982); box-shadow: none; }
.payment-complete-modal[hidden] { display: none; }.payment-complete-modal { position: fixed; inset: 0; z-index: 100; display: grid; place-items: center; padding: 24px; background: rgba(5, 3, 9, .78); backdrop-filter: blur(9px); }.payment-complete-dialog { width: min(100%, 540px); padding: 30px; border: 1px solid #7251a2; border-radius: 22px; color: #f8f5ff; text-align: center; background: linear-gradient(145deg, #251a32, #120e1a); box-shadow: 0 30px 90px rgba(0, 0, 0, .55); }.payment-complete-check { display: grid; place-items: center; width: 54px; height: 54px; margin: 0 auto 16px; border-radius: 50%; color: #072217; background: #50d69a; font-size: 29px; font-weight: 900; }.payment-complete-dialog h2 { margin: 6px 0 15px; color: #fff; font-size: clamp(28px, 5vw, 38px); line-height: 1.05; }.payment-complete-message { margin: 0 auto 16px; max-width: 450px; color: #e2d9ee; line-height: 1.6; white-space: pre-line; }.payment-complete-receipt { margin: 0 auto 20px; padding: 12px; border: 1px solid #3d755b; border-radius: 10px; color: #c9f6df; background: #123325; font-size: 14px; }.payment-complete-community { margin: -7px 0 20px; color: #d9c4ff; font-size: 14px; }.payment-complete-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }.payment-complete-actions .button { min-height: 46px; padding: 0 12px; }.payment-complete-dialog > small { display: block; margin-top: 17px; color: #bdaece; }
.digital-delivery { margin: 0 0 18px; padding: 16px; border: 1px solid #8054b7; border-radius: 13px; text-align: left; background: linear-gradient(135deg, rgba(115, 64, 194, .22), rgba(29, 20, 41, .8)); }.digital-delivery > p { margin: 5px 0 12px; color: #dfd3ef; font-size: 14px; }.digital-delivery [data-delivery-code-list], .order-detail-code-list { display: grid; gap: 10px; }.digital-delivery code, .order-detail-code-list code { display: block; padding: 10px 11px; overflow-wrap: anywhere; border: 1px solid #68488d; border-radius: 8px; color: #fff; background: #0f0b16; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 13px; }.delivery-product { display: grid; gap: 8px; }.delivery-product > strong { color: #f7eeff; font-size: 14px; }.delivery-instructions { padding: 11px; border-left: 3px solid #a562ff; border-radius: 6px; background: rgba(16, 11, 23, .75); }.delivery-instructions span { display: block; margin-bottom: 4px; color: #cda7ff; font-size: 11px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }.delivery-instructions p { margin: 0; color: #e7dcf5; line-height: 1.55; white-space: pre-line; }.order-delivery-codes { display: grid; grid-column: 1 / -1; gap: 7px; width: 100%; margin-top: 13px; padding-top: 13px; border-top: 1px solid #49345c; }.order-delivery-codes > span { color: #cda7ff; font-size: 12px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }.digital-code-form { align-items: end; }.digital-code-form .digital-code-entry { grid-column: span 2; }.digital-code-form textarea { min-height: 148px; resize: vertical; }.digital-code-form .button { align-self: end; }
@media (max-width: 900px) { .support-layout { grid-template-columns: 1fr; }.review-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 650px) { .site-footer { padding: 30px 18px; }.site-footer nav { flex-direction: column; align-items: flex-start; gap: 8px; }.support-layout, .all-reviews, .category-browser { padding-left: 18px; padding-right: 18px; }.review-grid { grid-template-columns: 1fr; }.ticket-card > div { grid-template-columns: 1fr; }.ticket-card small { grid-column: 1; }.projects-menu, .explore-menu { display: none; }.payment-complete-dialog { padding: 24px 18px; }.payment-complete-actions { grid-template-columns: 1fr; }.crypto-picker-dialog { padding: 25px 18px; }.crypto-modal-grid { grid-template-columns: 1fr; }.crypto-modal-option { min-height: 74px; } }
@media (max-width: 760px) { .digital-code-form .digital-code-entry { grid-column: auto; }.order-delivery-codes { grid-column: 1; } }

/* Account order rows on the dark canvas. Cards were inheriting the light-theme
   white background + muted grey text and reading as faded, unlabelled boxes. */
.account-orders .order-row { background: linear-gradient(150deg, #1c1526, #14101c); border: 1px solid #3b2b51; border-radius: 16px; padding: 18px 22px; margin-bottom: 10px; gap: 18px; box-shadow: 0 14px 38px rgba(0, 0, 0, .18); }
.account-orders .order-row:hover { border-color: #6b46a0; box-shadow: 0 18px 48px rgba(0, 0, 0, .28); }
.account-orders .order-row > div { gap: 16px; }
.account-orders .order-row > div:first-child { flex-direction: column; align-items: flex-start; gap: 4px; }
.account-orders .order-row > div:last-child { flex-direction: column; align-items: flex-end; gap: 4px; text-align: right; }
.account-orders .order-row strong { color: #f7f2ff; font-size: 17px; letter-spacing: -.01em; }
.account-orders .order-row span { color: #d6cce9; font-weight: 600; }
.account-orders .order-row small { color: #b7aec6; font-size: 13px; line-height: 1.4; }
.account-orders .order-row .text-link { color: #c895ff; font-size: 13px; margin-top: 4px; }
.account-orders .order-row .text-link:hover { color: #e2c5ff; }
.account-orders .order-row > div:last-child strong { font-size: 20px; color: #fff; }
.account-orders .status { display: inline-block; padding: 5px 11px; border-radius: 999px; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; border: 1px solid transparent; }
.account-orders .status-pending, .account-orders .status-draft { color: #ffe0a1; background: rgba(120, 82, 24, .32); border-color: rgba(255, 195, 92, .35); }
.account-orders .status-paid { color: #baf5d5; background: rgba(24, 96, 62, .35); border-color: rgba(88, 214, 152, .38); }
.account-orders .status-processing, .account-orders .status-in_review { color: #cad7ff; background: rgba(35, 55, 110, .5); border-color: rgba(133, 158, 240, .38); }
.account-orders .status-fulfilled { color: #d4c1ff; background: rgba(80, 55, 138, .45); border-color: rgba(174, 138, 255, .45); }
.account-orders .status-cancelled, .account-orders .status-failed { color: #ffc7c7; background: rgba(108, 34, 34, .38); border-color: rgba(240, 130, 130, .4); }
@media (max-width: 600px) { .account-orders .order-row { flex-direction: column; align-items: stretch; padding: 16px; }.account-orders .order-row > div:last-child { flex-direction: row; align-items: center; justify-content: space-between; text-align: left; } }
.account-orders .order-row-link { display: flex; text-decoration: none; color: inherit; cursor: pointer; transition: transform .12s ease, border-color .12s ease, box-shadow .12s ease; }
.account-orders .order-row-link:hover { transform: translateY(-1px); border-color: #9a63ff; box-shadow: 0 20px 55px rgba(0, 0, 0, .35); }
.account-orders .order-row-link:focus-visible { outline: 2px solid #9a63ff; outline-offset: 3px; }
.order-detail { max-width: 900px; margin: 0 auto; padding: 0 24px 40px; }
.order-detail-card { padding: 26px; border: 1px solid #3b2b51; border-radius: 20px; background: linear-gradient(150deg, #1c1526, #14101c); box-shadow: 0 22px 60px rgba(0, 0, 0, .28); }
.order-detail-header { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; padding-bottom: 20px; border-bottom: 1px solid #2a2140; }
.order-detail-header .status { display: inline-block; padding: 5px 12px; border-radius: 999px; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; border: 1px solid transparent; }
.order-detail-header .status-pending, .order-detail-header .status-draft { color: #ffe0a1; background: rgba(120, 82, 24, .32); border-color: rgba(255, 195, 92, .35); }
.order-detail-header .status-paid { color: #baf5d5; background: rgba(24, 96, 62, .35); border-color: rgba(88, 214, 152, .38); }
.order-detail-header .status-processing { color: #cad7ff; background: rgba(35, 55, 110, .5); border-color: rgba(133, 158, 240, .38); }
.order-detail-header .status-fulfilled { color: #d4c1ff; background: rgba(80, 55, 138, .45); border-color: rgba(174, 138, 255, .45); }
.order-detail-header .status-cancelled, .order-detail-header .status-failed { color: #ffc7c7; background: rgba(108, 34, 34, .38); border-color: rgba(240, 130, 130, .4); }
.order-detail-method { color: #bdaece; font-size: 14px; font-weight: 700; }
.order-detail-total { margin-left: auto; color: #ffffff; font-size: 26px; font-weight: 800; }
.order-detail-items, .order-detail-delivery, .order-detail-message { padding: 22px 0; border-bottom: 1px solid #2a2140; }
.order-detail-items h3, .order-detail-delivery h3, .order-detail-message h3 { margin: 0 0 14px; color: #f5f0ff; font-size: 15px; text-transform: uppercase; letter-spacing: .12em; }
.order-detail-items ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 10px; }
.order-detail-items li { display: flex; justify-content: space-between; gap: 16px; color: #e2d9ee; font-size: 15px; }
.order-detail-items li strong { color: #ffffff; font-weight: 700; }
.order-detail-delivery-note { margin: 0 0 14px; color: #bdaece; font-size: 14px; }
.order-detail-code-list { display: grid; gap: 8px; }
.order-detail-code-list code { display: block; padding: 12px 16px; border: 1px solid #3d755b; border-radius: 12px; background: #0f2419; color: #c9f6df; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 15px; word-break: break-all; }
.order-detail-message-body { margin: 0 0 16px; color: #e2d9ee; font-size: 15px; line-height: 1.65; white-space: pre-line; }
.order-detail-footer { padding-top: 18px; color: #9d92b3; font-size: 13px; }
.order-detail-footer b { color: #d8ceea; }
.admin-delivery-page { max-width: 1100px; margin: 0 auto; padding: 0 24px 40px; }
.admin-delivery-toolbar { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; justify-content: space-between; padding: 16px 20px; border: 1px solid #3b2b51; border-radius: 14px; background: #17111f; margin-bottom: 16px; }
.admin-delivery-search { flex: 1; min-width: 260px; padding: 12px 16px; border: 1px solid #4a3565; border-radius: 10px; background: #0f0a17; color: #f5f0ff; font-size: 15px; }
.admin-delivery-search:focus { outline: none; border-color: #9a63ff; box-shadow: 0 0 0 3px rgba(154, 99, 255, .22); }
.admin-delivery-summary { color: #bdaece; font-size: 13px; letter-spacing: .02em; }
.admin-delivery-summary b { color: #f5f0ff; font-weight: 800; }
.admin-delivery-list { display: grid; gap: 18px; }
.admin-delivery-category { border: 1px solid #2f2245; border-radius: 16px; background: #120e1a; overflow: hidden; }
.admin-delivery-category > summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px 20px; border-bottom: 1px solid transparent; background: linear-gradient(90deg, rgba(154, 99, 255, .12), rgba(154, 99, 255, 0)); }
.admin-delivery-category > summary::-webkit-details-marker { display: none; }
.admin-delivery-category > summary::after { content: "▸"; color: #9a63ff; font-size: 14px; transition: transform .12s ease; }
.admin-delivery-category[open] > summary { border-bottom-color: #2a2140; }
.admin-delivery-category[open] > summary::after { transform: rotate(90deg); }
.admin-delivery-category-name { color: #f5f0ff; font-size: 15px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.admin-delivery-category-meta { color: #9d92b3; font-size: 12px; }
.admin-delivery-category-meta b { color: #d8ceea; font-weight: 800; }
.admin-delivery-category-body { display: grid; gap: 8px; padding: 12px; background: #0f0a17; }
.admin-delivery-item { border: 1px solid #3b2b51; border-radius: 14px; background: linear-gradient(150deg, #1c1526, #14101c); overflow: hidden; transition: border-color .12s ease; }
.admin-delivery-item[open] { border-color: #9a63ff; }
.admin-delivery-item > summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 20px; }
.admin-delivery-item > summary::-webkit-details-marker { display: none; }
.admin-delivery-item > summary::after { content: "＋"; margin-left: 10px; color: #9a63ff; font-size: 20px; font-weight: 700; line-height: 1; }
.admin-delivery-item[open] > summary::after { content: "×"; }
.admin-delivery-name { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.admin-delivery-name strong { color: #f7f2ff; font-size: 16px; }
.admin-delivery-variant { color: #d6cce9; font-weight: 600; font-size: 14px; }
.admin-delivery-name small { color: #9d92b3; font-size: 12px; text-transform: uppercase; letter-spacing: .1em; }
.admin-delivery-counts { display: flex; gap: 8px; flex-shrink: 0; }
.admin-delivery-pill { display: inline-block; padding: 6px 12px; border-radius: 999px; font-size: 12px; font-weight: 800; letter-spacing: .04em; border: 1px solid transparent; }
.admin-delivery-pill.available { color: #baf5d5; background: rgba(24, 96, 62, .35); border-color: rgba(88, 214, 152, .38); }
.admin-delivery-pill.delivered { color: #d4c1ff; background: rgba(80, 55, 138, .35); border-color: rgba(174, 138, 255, .35); }
.admin-delivery-stock { padding: 0 20px 4px; display: grid; gap: 12px; }
.admin-delivery-stock-group { padding: 12px 14px; border: 1px solid #2a2140; border-radius: 12px; background: #0d0a17; }
.admin-delivery-stock-group.available { border-color: rgba(88, 214, 152, .28); background: rgba(15, 36, 25, .55); }
.admin-delivery-stock-group.delivered > summary { list-style: none; cursor: pointer; display: flex; align-items: center; gap: 8px; }
.admin-delivery-stock-group.delivered > summary::-webkit-details-marker { display: none; }
.admin-delivery-stock-group.delivered > summary::after { content: "▸"; margin-left: auto; color: #9a63ff; transition: transform .12s ease; }
.admin-delivery-stock-group.delivered[open] > summary::after { transform: rotate(90deg); }
.admin-delivery-stock-group.delivered[open] > summary { margin-bottom: 10px; }
.admin-delivery-stock-label { color: #d8ceea; font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; }
.admin-delivery-stock-group.available .admin-delivery-stock-label { color: #baf5d5; }
.admin-delivery-stock-list { margin-top: 8px; display: flex; flex-wrap: wrap; gap: 6px; }
.admin-delivery-stock-list code { padding: 6px 10px; border-radius: 8px; background: #1a1226; color: #f5f0ff; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 13px; word-break: break-all; }
.admin-delivery-stock-group.available .admin-delivery-stock-list code { background: #0f2419; color: #c9f6df; border: 1px solid rgba(88, 214, 152, .25); border-right: none; border-radius: 8px 0 0 8px; }
.admin-delivery-stock-chip { display: inline-flex; align-items: stretch; }
.admin-delivery-stock-chip form { display: flex; margin: 0; }
.admin-delivery-stock-chip button { padding: 0 10px; border: 1px solid rgba(88, 214, 152, .25); border-left: 1px solid rgba(88, 214, 152, .18); border-radius: 0 8px 8px 0; background: rgba(15, 36, 25, .8); color: #f4b7b7; font-size: 15px; font-weight: 800; line-height: 1; cursor: pointer; transition: background .12s ease, color .12s ease; }
.admin-delivery-stock-chip button:hover { background: rgba(108, 34, 34, .5); color: #ffdada; border-color: rgba(240, 130, 130, .5); }
.admin-delivery-stock-group.delivered .admin-delivery-stock-list code { background: #1a1226; color: #bdaece; border: 1px solid #2a2140; text-decoration: line-through; text-decoration-color: rgba(189, 174, 206, .5); }
.admin-delivery-stock-empty { margin: 0; color: #9d92b3; font-size: 13px; font-style: italic; }
.admin-delivery-form { display: grid; gap: 12px; padding: 12px 20px 20px; }
.admin-delivery-form label { display: grid; gap: 8px; color: #cfc3de; font-size: 13px; font-weight: 700; }
.admin-delivery-form textarea { padding: 12px 14px; border: 1px solid #4a3565; border-radius: 10px; background: #0f0a17; color: #f5f0ff; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 14px; resize: vertical; }
.admin-delivery-form textarea:focus { outline: none; border-color: #9a63ff; box-shadow: 0 0 0 3px rgba(154, 99, 255, .2); }
.admin-delivery-empty-search { padding: 24px; text-align: center; color: #bdaece; border: 1px dashed #3b2b51; border-radius: 12px; margin-top: 12px; }
.admin-delivery-toolbar { flex-wrap: wrap; }
.admin-delivery-perpage { color: #cfc3de; font-size: 13px; font-weight: 700; display: flex; align-items: center; gap: 8px; }
.admin-delivery-perpage select { padding: 8px 10px; border: 1px solid #4a3565; border-radius: 8px; background: #0f0a17; color: #f5f0ff; font-weight: 700; }
.admin-delivery-perpage select:focus { outline: none; border-color: #9a63ff; box-shadow: 0 0 0 3px rgba(154, 99, 255, .2); }
.admin-delivery-pager { display: flex; align-items: center; justify-content: center; gap: 16px; margin-top: 22px; padding: 16px; border: 1px solid #3b2b51; border-radius: 14px; background: #14101c; }
.admin-delivery-pager-info { color: #d6cce9; font-size: 14px; font-weight: 700; }
.admin-delivery-pager .button.disabled { opacity: .35; cursor: not-allowed; pointer-events: none; }
.admin-stats { margin-bottom: 24px; padding: 22px; border: 1px solid #3b2b51; border-radius: 18px; background: linear-gradient(150deg, #1c1526, #14101c); box-shadow: 0 22px 60px rgba(0, 0, 0, .28); }
.admin-stats-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 18px; flex-wrap: wrap; }
.admin-stats-head h2 { margin: 4px 0 0; color: #ffffff; font-size: 24px; }
.admin-stats-tabs { display: flex; gap: 6px; padding: 4px; border: 1px solid #3b2b51; border-radius: 12px; background: #0f0a17; }
.admin-stats-tabs a { padding: 8px 16px; border-radius: 8px; color: #bdaece; font-size: 13px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; transition: color .12s ease, background .12s ease; }
.admin-stats-tabs a:hover { color: #ffffff; }
.admin-stats-tabs a.active { background: linear-gradient(135deg, #9a63ff, #6946ee); color: #ffffff; }
.admin-stats-tiles { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; margin-bottom: 22px; }
.admin-stats-tiles article { padding: 16px 18px; border: 1px solid #3b2b51; border-radius: 14px; background: #0f0a17; }
.admin-stats-tiles article span { display: block; color: #9d92b3; font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; margin-bottom: 6px; }
.admin-stats-tiles article strong { display: block; color: #ffffff; font-size: 28px; font-weight: 800; letter-spacing: -.02em; margin-bottom: 4px; }
.admin-stats-tiles article small { color: #bdaece; font-size: 12px; }
.admin-stats-charts { display: grid; gap: 18px; }
.admin-stats-chart { padding: 14px 16px 12px; border: 1px solid #3b2b51; border-radius: 14px; background: #0f0a17; }
.admin-stats-chart-head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 12px; }
.admin-stats-chart-head span { color: #cfc3de; font-size: 12px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.admin-stats-chart-head b { color: #baf5d5; font-size: 12px; font-weight: 800; }
.admin-stats-bars { display: flex; align-items: flex-end; gap: 3px; height: 120px; padding-bottom: 22px; position: relative; }
.admin-stats-bar-col { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; gap: 4px; min-width: 0; height: 100%; cursor: default; }
.admin-stats-bar-col small { position: absolute; bottom: 0; color: #7d738f; font-size: 10px; font-variant-numeric: tabular-nums; }
.admin-stats-bar { width: 100%; min-height: 2px; border-radius: 4px 4px 0 0; transition: opacity .12s ease; }
.admin-stats-bar.revenue { background: linear-gradient(180deg, #baf5d5, #50d69a); }
.admin-stats-bar.orders { background: linear-gradient(180deg, #d5c4ff, #9a63ff); }
.admin-stats-bar.visitors { background: linear-gradient(180deg, #f4d4a0, #d69a50); }
.admin-stats-bar-col:hover .admin-stats-bar { opacity: .7; }
@media (max-width: 700px) { .admin-stats-bar-col small { display: none; } .admin-stats-bars { padding-bottom: 6px; } }
.cart-line { background: linear-gradient(150deg, #1c1526, #14101c); border-color: #3b2b51; box-shadow: 0 14px 38px rgba(0, 0, 0, .22); }
.cart-line:hover { border-color: #6b46a0; }
.cart-line h3 { color: #f7f2ff; font-size: 17px; }
.cart-line p { color: #bdaece; }
.cart-line .eyebrow { color: #c895ff; }
.cart-line > strong { color: #ffffff; font-size: 18px; font-weight: 800; }
.cart-line form input { background: #0f0a17; border-color: #4a3565; color: #f5f0ff; }
.cart-line form input:focus { border-color: #9a63ff; box-shadow: 0 0 0 3px rgba(154, 99, 255, .2); }
.cart-line form button { color: #c895ff; font-weight: 800; }
.cart-line form button:hover { color: #e2c5ff; }
.cart-thumb { background: #1a1226; color: #bdaece; }
.order-summary { background: linear-gradient(150deg, #1c1526, #14101c); border: 1px solid #3b2b51; box-shadow: 0 22px 60px rgba(0, 0, 0, .3); }
.order-summary .eyebrow { color: #c895ff; }
.order-summary > div { color: #e2d9ee; }
.order-summary > div strong { color: #ffffff; font-weight: 800; }
.order-summary > div span { color: #d6cce9; }
.order-summary .discount-line span { color: #baf5d5; }
.order-summary .discount-line strong { color: #baf5d5; }
.order-summary p { color: #9d92b3; }
.order-summary label { color: #cfc3de; font-weight: 700; }
.order-summary input { background: #0f0a17; border-color: #4a3565; color: #f5f0ff; }
.order-summary input:focus { border-color: #9a63ff; box-shadow: 0 0 0 3px rgba(154, 99, 255, .2); }
.order-summary input::placeholder { color: #7d738f; }
.order-summary .button.ghost { background: #17131f; color: #f5f0ff; border-color: #4a3565; }
.order-summary .button.ghost:hover { border-color: #9a63ff; background: #211829; }
.order-summary .promo-applied { display: flex; justify-content: space-between; align-items: center; color: #d6cce9; }
.order-summary .promo-applied strong { color: #baf5d5; }
.order-summary .promo-applied .text-link { color: #f4b7b7; }
.empty-state { background: linear-gradient(150deg, #1c1526, #14101c); border: 1px dashed #4a3565; color: #bdaece; }
.empty-state a { color: #c895ff; }
.pay-card { padding: 24px; }
.pay-card-head h2 { margin: 0 0 16px; color: #ffffff; font-size: 22px; font-weight: 800; }
.pay-qr { margin: 0 0 18px; padding: 16px; background: #ffffff; border-radius: 14px; display: grid; place-items: center; }
.pay-qr img { width: 100%; max-width: 260px; height: auto; display: block; }
.pay-facts { margin: 0 0 16px; padding: 14px 16px; background: #0d0a17; border: 1px solid #2a2140; border-radius: 12px; display: grid; gap: 10px; }
.pay-facts > div { display: flex; gap: 14px; align-items: baseline; }
.pay-facts dt { flex: 0 0 110px; color: #9d92b3; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; margin: 0; }
.pay-facts dd { margin: 0; color: #ffffff; font-size: 15px; font-weight: 700; word-break: break-all; }
.pay-facts code { padding: 3px 8px; border-radius: 6px; background: #1a1226; color: #d5c4ff; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 14px; }
.pay-facts-address dd code { display: inline-block; max-width: 100%; word-break: break-all; font-size: 13px; }
.pay-status { color: #ffe0a1 !important; }
.pay-countdown { color: #baf5d5; font-variant-numeric: tabular-nums; }
.pay-countdown.expired { color: #f4b7b7; }
.payment-complete-dialog { position: relative; }
.payment-complete-close { position: absolute; top: 12px; right: 12px; width: 34px; height: 34px; padding: 0; border: 1px solid #3d2d4b; border-radius: 50%; background: rgba(15, 10, 23, .7); color: #d6cce9; font-size: 22px; font-weight: 700; line-height: 1; cursor: pointer; display: grid; place-items: center; transition: border-color .12s ease, color .12s ease, background .12s ease; }
.payment-complete-close:hover { border-color: #9a63ff; color: #ffffff; background: #211829; }
body { position: relative; }
body > main, body > header, body > footer, body > nav { position: relative; z-index: 1; }
/* The 1536 x 1024 image must travel exactly one repeated tile per loop. */
.site-money-fall { --money-tile-height: calc(100vw * 2 / 3); position: fixed; inset: 0; z-index: 8; pointer-events: none; opacity: .32; mix-blend-mode: screen; background-image: url('/static/moneylogs-falling-bills.png'), url('/static/moneylogs-falling-bills.png'); background-position: center -180px, center 780px; background-repeat: repeat-y, repeat-y; background-size: 100vw var(--money-tile-height), 100vw var(--money-tile-height); animation: site-money-bills-fall 32s linear infinite; }
@keyframes site-money-bills-fall { from { background-position: center -900px, center 80px; } to { background-position: center calc(-900px + var(--money-tile-height)), center calc(80px + var(--money-tile-height)); } }
@media (prefers-reduced-motion: reduce) { .site-money-fall { animation-duration: 48s; opacity: .22; } }
.product-detail-image { background: linear-gradient(150deg, #1c1526, #14101c); border: 1px solid #3b2b51; }
.product-detail h1 { color: #ffffff; }
.product-detail .description { color: #bdaece; }
.product-detail .eyebrow { color: #c895ff; }
.selected-variant { background: rgba(154, 99, 255, .18); color: #d5c4ff; border: 1px solid rgba(154, 99, 255, .35); }
.variant-picker > span { color: #cfc3de; }
.variant-picker a { background: #17131f; border-color: #4a3565; color: #e2d9ee; }
.variant-picker a:hover { border-color: #9a63ff; color: #ffffff; }
.variant-picker a.active { background: rgba(154, 99, 255, .2); border-color: #9a63ff; color: #ffffff; }
.purchase-box { background: linear-gradient(150deg, #1c1526, #14101c); border: 1px solid #3b2b51; box-shadow: 0 22px 60px rgba(0, 0, 0, .3); }
.purchase-box > strong { color: #ffffff; }
.purchase-box label { color: #cfc3de; font-weight: 700; }
.purchase-box input { background: #0f0a17; border-color: #4a3565; color: #f5f0ff; }
.purchase-box input:focus { border-color: #9a63ff; box-shadow: 0 0 0 3px rgba(154, 99, 255, .2); }
.purchase-box .button.ghost { background: #17131f; color: #f5f0ff; border-color: #4a3565; }
.purchase-box .button.ghost:hover { border-color: #9a63ff; }
.nav-casino { padding: 6px 12px; border-radius: 10px; background: linear-gradient(135deg, rgba(154, 99, 255, .22), rgba(80, 214, 152, .18)); border: 1px solid rgba(154, 99, 255, .45); color: #f5f0ff !important; font-weight: 800; letter-spacing: .01em; transition: border-color .12s ease, background .12s ease, transform .12s ease; }
.nav-casino:hover { border-color: #baf5d5; background: linear-gradient(135deg, rgba(154, 99, 255, .35), rgba(80, 214, 152, .3)); transform: translateY(-1px); }
.mobile-nav .nav-casino { display: inline-block; padding: 8px 14px; margin: 4px 0; }
.pay-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 0 0 14px; }
.payment-card-option { display: flex !important; align-items: center; justify-content: space-between; gap: 10px; }
.payment-brand-marks { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }
.payment-brand-marks b { display: inline-grid; place-items: center; min-height: 20px; padding: 1px 5px; border-radius: 4px; font-family: Arial, sans-serif; font-size: 10px; font-weight: 900; line-height: 1; letter-spacing: -.04em; }
.paypal-mark { color: #fff !important; background: linear-gradient(100deg, #003087 0 52%, #009cde 52%); font-style: italic; }
.visa-mark { color: #1a3b9b !important; background: #fff; font-style: italic; }
.mastercard-mark { min-width: 22px; color: #ffd037 !important; background: linear-gradient(90deg, #ed1c24 0 49%, #f79e1b 51%); letter-spacing: -5px !important; text-indent: -2px; overflow: hidden; }
.payment-brand-marks-large { margin-top: 16px; }
.payment-brand-marks-large b { min-height: 30px; padding: 2px 9px; font-size: 14px; }
.gift-card-steps { display: grid; gap: 12px; margin: 0 0 18px; padding-left: 22px; color: #d6cce9; line-height: 1.5; }
.gift-card-steps a { font-weight: 800; }
.gift-card-steps .buy-gift-card-button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 16px; text-decoration: none; }
.gift-card-codes { max-width: 360px; margin: 0; padding: 10px; overflow: auto; white-space: pre-wrap; word-break: break-all; border: 1px solid #4a3565; border-radius: 8px; background: #0f0a17; color: #f5f0ff; font: 12px/1.45 ui-monospace, SFMono-Regular, Menlo, monospace; }
.gift-card-review-form { display: grid; gap: 8px; min-width: 230px; }
.gift-card-review-form label { display: grid; gap: 5px; color: #cfc3de; font-size: 12px; font-weight: 800; }
.gift-card-review-form input { width: 100%; box-sizing: border-box; padding: 8px; border: 1px solid #4a3565; border-radius: 8px; background: #0f0a17; color: #f5f0ff; }
.gift-card-review-form > div { display: flex; flex-wrap: wrap; gap: 7px; align-items: center; }
.gift-card-review-form button[name="action"][value="reject"] { display: inline-flex; align-items: center; justify-content: center; min-height: 32px; padding: 7px 10px; border: 1px solid #b4475f; border-radius: 8px; color: #fff; background: linear-gradient(135deg, #862b42, #ba405a); font: inherit; font-size: 12px; font-weight: 800; cursor: pointer; text-decoration: none; }
.gift-card-review-form button[name="action"][value="reject"]:hover { filter: brightness(1.12); }
.pay-actions .button { min-height: 48px; font-size: 14px; }
.pay-secondary { display: grid; gap: 8px; margin-top: 14px; padding-top: 14px; border-top: 1px solid #2a2140; }
@media (max-width: 480px) { .pay-actions { grid-template-columns: 1fr; } .pay-facts > div { flex-direction: column; gap: 4px; } .pay-facts dt { flex: none; } }
@media (max-width: 600px) { .admin-delivery-item > summary { flex-direction: column; align-items: flex-start; } .admin-delivery-counts { flex-wrap: wrap; } }

/* The mobile menu must retain the Moneylogs dark theme when it is expanded. */
.mobile-nav {
  color: #f7f3ff !important;
  background: #120d19 !important;
  border-bottom-color: #3d2b50 !important;
  box-shadow: 0 18px 40px rgba(0, 0, 0, .42) !important;
}
.mobile-nav a {
  color: #f7f3ff !important;
  border-bottom: 1px solid #2e213d;
}
.mobile-nav a:last-child { border-bottom: 0; }
.mobile-nav a:hover {
  color: #ffffff !important;
  background: linear-gradient(135deg, #43256f, #22152f);
}

/* Casino is a deliberate partner destination, not a standard navigation link. */
.nav-casino {
  background: linear-gradient(135deg, #80580b, #d9a92a 48%, #7c5000) !important;
  border-color: #ffd869 !important;
  color: #1b1000 !important;
  box-shadow: 0 0 0 1px rgba(255, 215, 92, .32), 0 0 18px rgba(255, 191, 39, .72), 0 0 38px rgba(255, 177, 27, .32) !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, .38);
  animation: casino-gold-pulse 1.8s ease-in-out infinite;
}
.nav-casino:hover {
  border-color: #fff2b1 !important;
  background: linear-gradient(135deg, #9a6905, #ffd65d 48%, #986000) !important;
  color: #120b00 !important;
}
.casino-coin {
  display: inline-grid;
  width: 18px;
  height: 18px;
  place-items: center;
  margin-right: 3px;
  border-radius: 50%;
  background: radial-gradient(circle at 32% 28%, #fff7b1 0 13%, #f7cd49 14% 42%, #a66a00 72%);
  border: 1px solid #fff0a2;
  color: #4b2b00;
  font-family: Georgia, serif;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  vertical-align: -2px;
}
@keyframes casino-gold-pulse {
  0%, 100% { box-shadow: 0 0 0 1px rgba(255, 215, 92, .32), 0 0 14px rgba(255, 191, 39, .58), 0 0 26px rgba(255, 177, 27, .24); }
  50% { box-shadow: 0 0 0 1px rgba(255, 232, 145, .78), 0 0 25px rgba(255, 205, 59, .92), 0 0 50px rgba(255, 177, 27, .5); }
}
@media (prefers-reduced-motion: reduce) { .nav-casino { animation: none; } }

/* Folder-style admin tabs: clear separate sections, without using the reference's colour scheme. */
.admin-area-tabs { position: sticky; top: 10px; z-index: 25; margin: 0 0 26px; padding: 0; overflow: visible; background: transparent; border: 0; box-shadow: none; }
.admin-area-tabs-label { display: block; margin: 0 0 8px 4px; color: #cda4ff; font-size: 11px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.admin-area-tab-list { display: flex; align-items: flex-end; gap: 3px; padding: 0 12px; border-bottom: 2px solid #7650a5; }
.admin-area-tabs a { position: relative; top: 2px; display: inline-flex; align-items: center; min-height: 39px; padding: 9px 15px 8px; border: 1px solid #4d3566; border-bottom: 0; border-radius: 13px 13px 0 0; color: #ded2ec; font-weight: 850; text-decoration: none; white-space: nowrap; background: linear-gradient(180deg, #251a33, #17101f); box-shadow: inset 0 1px rgba(255,255,255,.06); }
.admin-area-tabs a::before { content: ""; position: absolute; top: -5px; left: 13px; width: 30px; height: 5px; border: 1px solid #4d3566; border-bottom: 0; border-radius: 7px 7px 0 0; background: #251a33; }
.admin-area-tabs a:hover { color: #fff; background: linear-gradient(180deg, #38244d, #21162d); }
.admin-area-tabs a.active { z-index: 2; color: #fff; border-color: #a86bff; background: linear-gradient(135deg, #7140d0, #9c56ef); box-shadow: 0 -6px 20px rgba(140, 77, 232, .3), inset 0 1px rgba(255,255,255,.24); }
.admin-area-tabs a.active::before { border-color: #a86bff; background: #7140d0; }
.admin-area-tabs a.active::after { content: ""; position: absolute; right: 0; bottom: -3px; left: 0; height: 4px; background: #7c48dd; }
.admin-area-tabs b { display: inline-grid; min-width: 18px; height: 18px; place-items: center; border-radius: 50%; background: #ea5a7b; color: #fff; font-size: 11px; }
.compact-button { display: inline-block; padding: 7px 10px !important; font-size: 12px; }

/* Support tickets are a real two-way conversation, including image attachments. */
.ticket-thread-page { max-width: 1040px; margin: 0 auto; padding: 42px 20px 72px; }
.ticket-thread-head { margin-bottom: 24px; padding: 24px; border: 1px solid #49335e; border-radius: 20px; background: linear-gradient(125deg, rgba(42, 25, 65, .94), rgba(18, 12, 27, .97)); box-shadow: 0 20px 45px rgba(0, 0, 0, .25); }
.ticket-thread-head .text-link { display: inline-block; margin-bottom: 18px; }
.ticket-thread-head h1 { margin: 8px 0; color: #fff; }
.ticket-thread-head p { color: #c9bdd8; }
.ticket-thread-notice { margin: 0 0 18px; }
.ticket-conversation { display: grid; gap: 16px; margin: 0 auto 24px; padding: 20px; border: 1px solid #38254f; border-radius: 20px; background: rgba(10, 7, 16, .58); }
.ticket-message { width: min(78%, 680px); padding: 16px 18px; border: 1px solid #49335e; border-radius: 16px; background: #191221; color: #f7f3ff; box-shadow: 0 12px 30px rgba(0,0,0,.18); }
.ticket-message.customer { justify-self: start; border-top-left-radius: 4px; background: linear-gradient(145deg, #21162d, #17101f); }
.ticket-message.admin { justify-self: end; border-top-right-radius: 4px; border-color: #8050cf; background: linear-gradient(145deg, #382060, #211339); }
.ticket-message-name { display: block; margin-bottom: 6px; color: #bd91ff; font-size: 12px; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.ticket-message p { margin: 0; white-space: pre-wrap; line-height: 1.55; }
.ticket-message time { display: block; margin-top: 9px; color: #b8a8c7; font-size: 12px; }
.ticket-attachment { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-width: 210px; margin-top: 13px; padding: 12px 16px; border: 1px solid #9d65ff; border-radius: 11px; background: linear-gradient(135deg, rgba(141, 81, 232, .35), rgba(62, 31, 98, .72)); box-shadow: 0 8px 22px rgba(110, 57, 192, .2); color: #f1e9ff; font-size: 14px; font-weight: 900; text-decoration: none; }
.ticket-attachment::before { content: "▣"; font-size: 17px; }
.ticket-attachment:hover { background: rgba(130, 73, 208, .3); color: #fff; }
.ticket-reply-form { display: grid; gap: 13px; padding: 22px; border: 1px solid #49335e; border-radius: 16px; background: linear-gradient(145deg, #1e1528, #140e1c); }
.ticket-reply-form h2 { margin: 0 0 3px; color: #fff; }
.ticket-reply-form label { display: grid; gap: 7px; color: #e2d8ed; font-weight: 800; }
.ticket-reply-form label small { color: #ad9bbe; font-weight: 500; }
.ticket-reply-form textarea, .ticket-reply-form select, .ticket-reply-form input[type=file] { width: 100%; box-sizing: border-box; padding: 11px; border: 1px solid #563973; border-radius: 9px; background: #100b17; color: #fff; }
.ticket-reply-form textarea { height: 260px !important; min-height: 260px !important; max-height: 260px; resize: none; font-size: 16px; line-height: 1.5; }
.ticket-reply-form .button { justify-self: start; min-width: 180px; }
@media (max-width: 640px) { .admin-area-tabs { top: 4px; } .admin-area-tab-list { overflow-x: auto; flex-wrap: nowrap; padding: 0 8px; scrollbar-width: thin; } .admin-area-tabs a { flex: 0 0 auto; padding: 8px 11px; font-size: 13px; } .ticket-thread-page { padding: 28px 14px 54px; } .ticket-message { width: 92%; } .ticket-reply-form .button { width: 100%; } }

/* Keep detailed order attribution readable inside the admin table. */
.admin-table .order-attribution {
  min-width: 250px;
  max-width: 380px;
  overflow-wrap: anywhere;
}
.admin-table .order-attribution summary {
  cursor: pointer;
  color: #f2eaff;
  margin-bottom: 6px;
}
.admin-table .order-attribution small {
  line-height: 1.55;
}


/* Genuine buyer-trust strip: factual product guarantees and direct policy/support links. */
.trust-strip { grid-column: 1 / -1; display: grid; gap: 12px; margin-top: 18px; padding: 16px 18px; border: 1px solid rgba(166, 108, 255, .42); border-radius: 16px; background: linear-gradient(135deg, rgba(48, 28, 75, .9), rgba(20, 13, 29, .96)); box-shadow: 0 14px 34px rgba(0,0,0,.2); }
.trust-strip-heading { display: flex; align-items: center; gap: 9px; color: #fff; font-size: 14px; }
.trust-strip-heading > span { display: inline-grid; width: 24px; height: 24px; place-items: center; border-radius: 50%; background: #45d483; color: #08170e; font-weight: 950; }
.trust-strip-items { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px 14px; }
.trust-strip-items > span, .trust-strip-items > a { display: flex; align-items: center; gap: 8px; min-height: 34px; color: #ded3e9; font-size: 12px; font-weight: 750; line-height: 1.35; text-decoration: none; }
.trust-strip-items > a:hover, .trust-policy-links a:hover { color: #fff; text-decoration: underline; }
.trust-strip-items b[aria-hidden] { display: inline-grid; flex: 0 0 24px; height: 24px; place-items: center; border: 1px solid #7650a5; border-radius: 7px; color: #d5b2ff; font-size: 12px; }
.trust-policy-links { flex-wrap: wrap; }
.trust-policy-links a { color: #d5b2ff; }
.checkout-shell .trust-strip { margin: 4px 0 2px; }
.product-detail-copy .trust-strip { margin-top: 14px; }
@media (max-width: 760px) { .trust-strip-items { grid-template-columns: 1fr 1fr; } }
@media (max-width: 480px) { .trust-strip { padding: 14px; } .trust-strip-items { grid-template-columns: 1fr; } }


/* Homepage social proof: live order totals and rating-backed customer trust. */
.home-proof { max-width: 1180px; margin: 26px auto 8px; padding: 26px; border: 1px solid #503765; border-radius: 22px; background: radial-gradient(circle at 92% 10%, rgba(165,98,255,.18), transparent 35%), linear-gradient(145deg, #1d1527, #120e19); box-shadow: 0 22px 58px rgba(0,0,0,.3); }
.home-proof-heading { display: flex; flex-wrap: wrap; align-items: end; gap: 6px 18px; margin-bottom: 20px; }
.home-proof-heading .eyebrow { width: 100%; color: #c49aff; }
.home-proof-heading h2 { margin: 0; color: #fff; font-size: clamp(24px, 4vw, 36px); }
.home-proof-heading a { margin-left: auto; color: #d2b6ff; font-weight: 800; }
.home-proof-grid { display: grid; grid-template-columns: repeat(3, 1fr); overflow: hidden; border: 1px solid #4b385d; border-radius: 16px; background: rgba(11,8,15,.55); }
.home-proof-grid article { min-height: 132px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 20px; text-align: center; border-right: 1px solid #4b385d; }
.home-proof-grid article:last-child { border-right: 0; }
.home-proof-grid article > strong { color: #fff; font-size: clamp(30px, 5vw, 46px); line-height: 1; }
.home-proof-grid article > span { margin-top: 8px; color: #c8bdd3; font-size: 14px; }
.home-rating-stars { display: flex; gap: 3px; margin-bottom: 8px; color: #51465d; font-size: 22px; line-height: 1; }
.home-rating-stars .filled { color: #f2bd4f; text-shadow: 0 0 18px rgba(242,189,79,.32); }
.home-proof-grid .home-rating > strong { font-size: clamp(25px, 4vw, 34px); }
.home-stats-form { margin-bottom: 18px; padding: 16px; border: 1px solid #4d3761; border-radius: 14px; background: #120e19; }
.home-stats-form label small { display: block; color: #a99bb7; font-weight: 500; }
@media (max-width: 700px) {
  .home-proof { margin: 20px 18px 6px; padding: 20px 14px; }
  .home-proof-heading a { width: 100%; margin-left: 0; }
  .home-proof-grid { grid-template-columns: 1fr; }
  .home-proof-grid article { min-height: 105px; border-right: 0; border-bottom: 1px solid #4b385d; }
  .home-proof-grid article:last-child { border-bottom: 0; }
}

.ticket-close-form { max-width: 1000px; margin: 0 auto 14px; padding: 16px 20px; display: flex; align-items: center; justify-content: space-between; gap: 18px; border: 1px solid #624870; border-radius: 14px; background: rgba(22,16,30,.92); }
.ticket-close-form div { display: grid; gap: 3px; }
.ticket-close-form strong { color: #fff; }
.ticket-close-form span { color: #bfb3cb; font-size: 13px; }
.ticket-close-form .button { flex: 0 0 auto; border-color: #9a5570; }
@media (max-width: 600px) { .ticket-close-form { margin-left: 18px; margin-right: 18px; align-items: stretch; flex-direction: column; } .ticket-close-form .button { width: 100%; } }

/* Explicit contrast: generic ghost-button rules otherwise inherit dark text here. */
.ticket-close-form .button,
.ticket-close-form .button.ghost {
  color: #fff;
  border-color: #d56b91;
  background: linear-gradient(135deg, #71304d, #a54268);
  box-shadow: 0 8px 22px rgba(133, 44, 80, .28);
}
.ticket-close-form .button:hover,
.ticket-close-form .button.ghost:hover {
  color: #fff;
  border-color: #f08aae;
  background: linear-gradient(135deg, #87375a, #bd4c77);
}


/* Restrained, genuine social-proof notifications. */
.social-proof-toast[hidden] { display: none; }
.social-proof-toast { position: fixed; z-index: 95; left: 22px; bottom: 22px; width: min(410px, calc(100vw - 36px)); border: 1px solid #76509a; border-radius: 20px; overflow: hidden; color: #fff; background: linear-gradient(145deg, rgba(35,24,46,.98), rgba(16,11,23,.98)); box-shadow: 0 24px 70px rgba(0,0,0,.55); opacity: 0; transform: translateY(18px); transition: opacity .25s ease, transform .25s ease; }
.social-proof-toast.visible { opacity: 1; transform: translateY(0); }
.social-proof-toast > button { position: absolute; z-index: 2; top: 10px; right: 11px; width: 30px; height: 30px; padding: 0; border: 0; border-radius: 50%; color: #d8cce3; background: rgba(255,255,255,.06); font-size: 21px; cursor: pointer; }
.social-proof-toast > button:hover { color: #fff; background: rgba(255,255,255,.13); }
.social-proof-toast > a { display: grid; grid-template-columns: 50px 1fr; gap: 14px; align-items: center; padding: 18px 48px 18px 18px; color: inherit; text-decoration: none; }
.social-proof-icon { display: grid; place-items: center; width: 50px; height: 50px; border-radius: 15px; overflow: hidden; color: #201508; background: linear-gradient(145deg, #ffd979, #eaa735); box-shadow: 0 8px 22px rgba(234,167,53,.22); font-size: 24px; font-weight: 950; }
.social-proof-icon > img, .social-proof-icon > span { grid-area: 1 / 1; }
.social-proof-icon > img { width: 100%; height: 100%; object-fit: cover; }
.social-proof-icon > [hidden] { display: none; }
.social-proof-copy { min-width: 0; display: grid; gap: 3px; }
.social-proof-copy small { color: #cda7ff; font-size: 11px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.social-proof-copy strong { padding-right: 5px; color: #fff; font-size: 15px; line-height: 1.3; }
.social-proof-copy > span { overflow: hidden; color: #d4c9df; font-size: 13px; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.social-proof-copy time { color: #998ca7; font-size: 11px; }
.social-popup-toggle { grid-column: 1 / -1; }
@media (max-width: 600px) { .social-proof-toast { left: 12px; bottom: 12px; width: calc(100vw - 24px); border-radius: 16px; } .social-proof-toast > a { grid-template-columns: 42px 1fr; padding: 15px 43px 15px 14px; } .social-proof-icon { width: 42px; height: 42px; border-radius: 12px; } }
@media (prefers-reduced-motion: reduce) { .social-proof-toast { transition: none; } }


/* SEO catalogue and product guidance */
.catalog-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin: 2rem 0 0;
}
.catalog-pagination span {
  color: var(--muted, #b9afc9);
  font-weight: 700;
}
.catalog-seo-copy {
  max-width: 1040px;
}
.catalog-seo-copy > p {
  max-width: 900px;
  color: var(--muted, #c8bdd7);
  line-height: 1.75;
}
.product-guide-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.product-guide-grid article {
  padding: 1.25rem;
  border: 1px solid rgba(181, 120, 255, 0.25);
  border-radius: 18px;
  background: rgba(18, 11, 27, 0.72);
}
.product-guide-grid h3 {
  margin: 0 0 0.65rem;
}
.product-guide-grid p {
  margin: 0;
  color: var(--muted, #c8bdd7);
  line-height: 1.7;
}
.product-guide-grid a,
.catalog-seo-copy a {
  color: #d9a7ff;
}
@media (max-width: 760px) {
  .product-guide-grid {
    grid-template-columns: 1fr;
  }
  .catalog-pagination {
    flex-wrap: wrap;
  }
}


/* Floating anonymous support chat backed by the existing ticket system. */
.support-chat-widget { position: fixed; right: 20px; bottom: 20px; z-index: 1200; font-family: inherit; }
.support-chat-launcher { display: flex; align-items: center; gap: 9px; min-height: 52px; padding: 0 18px; border: 1px solid #c18bff; border-radius: 999px; color: #fff; background: linear-gradient(135deg, #6d32d8, #a353ef); box-shadow: 0 16px 38px rgba(60, 23, 101, .48); cursor: pointer; }
.support-chat-launcher span { font-size: 20px; }
.support-chat-panel { position: absolute; right: 0; bottom: 64px; width: min(380px, calc(100vw - 28px)); max-height: min(650px, calc(100vh - 100px)); overflow: hidden; border: 1px solid #76509a; border-radius: 20px; color: #f8f4ff; background: #130e1a; box-shadow: 0 24px 70px rgba(0,0,0,.62); }
.support-chat-panel > header { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 16px 18px; background: linear-gradient(135deg, #542697, #8c42d7); }
.support-chat-panel > header div { display: grid; gap: 2px; }
.support-chat-panel > header strong { font-size: 16px; }
.support-chat-panel > header small { color: #eadcff; font-size: 11px; }
.support-chat-panel > header button { border: 0; color: #fff; background: transparent; font-size: 27px; cursor: pointer; }
.support-chat-body { display: grid; gap: 12px; padding: 16px; }
.support-chat-body [hidden] { display: none !important; }
.support-chat-body form { display: grid; gap: 11px; }
.support-chat-body form > p { margin: 0 0 3px; color: #cfc2dc; font-size: 13px; line-height: 1.5; }
.support-chat-body label { display: grid; gap: 5px; color: #ddd1ea; font-size: 12px; font-weight: 800; }
.support-chat-body input, .support-chat-body textarea { box-sizing: border-box; width: 100%; padding: 11px 12px; border: 1px solid #513768; border-radius: 10px; color: #fff; background: #0d0912; font: inherit; resize: none; }
.support-chat-body .button { justify-content: center; width: 100%; }
.support-chat-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; }
.support-chat-messages { display: grid; gap: 9px; max-height: 390px; padding-right: 3px; overflow-y: auto; }
.support-chat-message { max-width: 84%; padding: 10px 12px; border-radius: 13px; background: #261a32; }
.support-chat-message.customer { justify-self: end; border-bottom-right-radius: 3px; background: #6531a4; }
.support-chat-message.staff { justify-self: start; border-bottom-left-radius: 3px; }
.support-chat-message strong { display: block; margin-bottom: 3px; color: #dcbcff; font-size: 10px; text-transform: uppercase; }
.support-chat-message.customer strong { color: #f2e8ff; }
.support-chat-message p { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; font-size: 14px; line-height: 1.45; }
.support-chat-compose.active { grid-template-columns: minmax(0, 1fr) auto; align-items: end; }
.support-chat-compose.active [data-support-message-field] { grid-column: 1; }
.support-chat-compose.active .button { grid-column: 2; width: auto; min-height: 46px; }
.support-chat-error { margin: 0; padding: 8px 10px; border-radius: 8px; color: #ffd3dc; background: #5b2433; font-size: 12px; }
.support-chat-closed { display: block; padding: 9px; color: #bcaec8; text-align: center; }
.support-chat-new { margin-top: 8px; padding: 7px 11px; border: 1px solid #8050cf; border-radius: 8px; color: #fff; background: #3b205c; cursor: pointer; }
@media (max-width: 520px) {
  .support-chat-widget { right: 14px; bottom: 14px; }
  .support-chat-panel { position: fixed; inset: 12px; width: auto; max-height: none; bottom: 12px; }
  .support-chat-messages { max-height: calc(100vh - 290px); }
  .support-chat-launcher strong { display: none; }
  .support-chat-launcher { width: 54px; padding: 0; justify-content: center; }
}
