/*
* 
* ==========================================================
* ADMIN.SCSS
* ==========================================================
*
* Main style file of the administration area. Written in SCSS. 
*
*/
/*
* 
* ==========================================================
* SHARED.SCSS
* ==========================================================
*
* File shared by both admin and client
*
*/
/*
* 
* ==========================================================
* ICONS.SCSS
* ==========================================================
*
* Icons file shared by admin and client
*
*/
/* Light-theme variables (default). Dark overrides live on .uxc-dark-mode (later in this file, equal specificity, wins when the class is on <html>). */
:root {
  --uxc-bg-primary: #ffffff;
  --uxc-bg-secondary: rgba(127, 127, 127, 0.06);
  --uxc-bg-tertiary: #f5f5f5;
  --uxc-text-primary: #1a1a1a;
  --uxc-text-secondary: #6b6b6b;
  --uxc-text-muted: #999999;
  --uxc-border-color: #b0b0b0;
  --uxc-accent: #a37a29;
  --uxc-accent-rgb: 163, 122, 41;
  --uxc-error: #ca3434;
  --uxc-success: #4caf50;
  --uxc-warning: #ffc107;
  --uxc-hover-bg: rgba(0, 0, 0, 0.05);
  --uxc-input-bg: #ffffff;
  --uxc-card-bg: #ffffff;
  --uxc-shadow: rgba(0, 0, 0, 0.1);
}
@font-face {
  font-family: 'Uncheckout Icons';
  src: url("../media/fonts/icons.ttf?v1") format("truetype"), url("../media/fonts/icons.woff?v1") format("woff"), url("../media/fonts/icons.svg?v1#Uncheckout-Icons") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block; }
[class^="uxc-icon-"]:before,
[class*=" uxc-icon-"]:before {
  font-family: "Uncheckout Icons" !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
/* Icons rendered as inline <svg> (nav items, etc.) must not also paint the font glyph via ::before — that doubled every nav icon (old font glyph + new SVG). */
[class^="uxc-icon-"]:has(svg)::before,
[class*=" uxc-icon-"]:has(svg)::before {
  content: none; }

.uxc-icon-copy:before {
  content: "\e90d"; }

.uxc-icon-back:before {
  content: "\e90c"; }

.uxc-icon-search:before {
  content: "\e90b"; }

.uxc-icon-shuffle:before {
  content: "\e904"; }

.uxc-icon-automation:before {
  content: "\e905"; }

.uxc-icon-bar-chart:before {
  content: "\e906"; }

.uxc-icon-delete:before {
  content: "\e907"; }

.uxc-icon-menu:before {
  content: "\e908"; }

.uxc-icon-plus-2:before {
  content: "\e909"; }

.uxc-icon-settings:before {
  content: "\e90a"; }

.uxc-icon-close:before {
  content: "\e903"; }

.uxc-icon-help:before {
  content: "\e902"; }

.uxc-icon-check:before {
  content: "\e901"; }

.uxc-icon-loader:before {
  content: "\e900"; }

.uxc-icon-download:before {
  content: "\66"; }

.uxc-icon-clip:before {
  content: "\65"; }

.uxc-icon-filters:before {
  content: "\e90e"; }

.uxc-icon-arrow-down:before {
  content: "\61"; }

.uxc-icon-user:before {
  content: "\6e"; }

.uxc-icon-arrow-right:before {
  content: "\ea3c"; }

.uxc-icon-arrow-left:before {
  content: "\ea40"; }

.uxc-icon-clock:before {
  content: "\46"; }

.uxc-icon-calendar:before {
  content: "\62"; }

.uxc-icon-image:before {
  content: "\e90f"; }


.uxc-icon-theme-toggle:before {
  content: "\e910"; }

/* Nav icons now use inline <svg>; suppress the legacy icon-font glyph (::before) for them.
   Scoped to .uxc-nav so icon-font usage elsewhere is unaffected. :has(svg) covers any
   converted icon; the explicit classes are a fallback for older browsers. */
.uxc-nav i:has(svg):before,
.uxc-nav i.uxc-icon-bar-chart:before,
.uxc-nav i.uxc-icon-settings:before,
.uxc-nav i.uxc-icon-user:before,
.uxc-nav i.uxc-icon-calendar:before {
  content: none;
}

/* Moon and sun icons for theme toggle */
.uxc-icon-moon,
.uxc-icon-sun {
  width: 16px;
  height: 16px;
  display: inline-block;
  position: relative;
  vertical-align: middle;
}

.uxc-icon-moon:before,
.uxc-icon-sun:before {
  width: 16px;
  height: 16px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.uxc-icon-moon:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.uxc-icon-sun:before {
  content: "";
  position: absolute;
  top: 52%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* Specific overrides for theme toggle button icons */
.uxc-btn-icon#uxc-theme-toggle .uxc-icon-moon,
.uxc-btn-icon#uxc-theme-toggle .uxc-icon-sun {
  width: 16px !important;
  height: 24px !important;
}

.uxc-btn-icon#uxc-theme-toggle .uxc-icon-moon:before,
.uxc-btn-icon#uxc-theme-toggle .uxc-icon-sun:before {
  width: 16px !important;
  height: 24px !important;
  top: 50% !important;
}

/* Moon icon SVG */
.uxc-icon-moon:before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='800px' height='800px' viewBox='0 0 16 16' fill='%23464646' class='bi bi-moon-stars-fill'%3E%0A  %3Cpath d='M6 .278a.768.768 0 0 1 .08.858 7.208 7.208 0 0 0-.878 3.46c0 4.021 3.278 7.277 7.318 7.277.527 0 1.04-.055 1.533-.16a.787.787 0 0 1 .81.316.733.733 0 0 1-.031.893A8.349 8.349 0 0 1 8.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.752.752 0 0 1 6 .278z'/%3E%0A  %3Cpath d='M10.794 3.148a.217.217 0 0 1 .412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 0 1 0 .412l-1.162.387a1.734 1.734 0 0 0-1.097 1.097l-.387 1.162a.217.217 0 0 1-.412 0l-.387-1.162A1.734 1.734 0 0 0 9.31 6.593l-1.162-.387a.217.217 0 0 1 0-.412l1.162-.387a1.734 1.734 0 0 0 1.097-1.097l.387-1.162zM13.863.099a.145.145 0 0 1 .274 0l.258.774c.115.346.386.617.732.732l.774.258a.145.145 0 0 1 0 .274l-.774.258a1.156 1.156 0 0 0-.732.732l-.258.774a.145.145 0 0 1-.274 0l-.258-.774a1.156 1.156 0 0 0-.732-.732l-.774-.258a.145.145 0 0 1 0-.274l.774-.258c.346-.115.617-.386.732-.732L13.863.1z'/%3E%0A%3C/svg%3E%0A");
}

/* Sun icon SVG */
.uxc-icon-sun:before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%0A%3Cg%3E%0A    %3Cpath fill='%23464646' d='M31.998%2C14.002c-9.941%2C0-18%2C8.059-18%2C18s8.059%2C18%2C18%2C18   s18-8.059%2C18-18S41.939%2C14.002%2C31.998%2C14.002z M42.998%2C33.002c-0.553%2C0-1-0.447-1-1c0-5.523-4.478-10-10-10c-0.553%2C0-1-0.447-1-1   s0.447-1%2C1-1c6.627%2C0%2C12%2C5.373%2C12%2C12C43.998%2C32.555%2C43.551%2C33.002%2C42.998%2C33.002z'/%3E%0A    %3Cpath fill='%23464646' d='M63%2C31H53c-0.553%2C0-1%2C0.447-1%2C1s0.447%2C1%2C1%2C1h10   c0.553%2C0%2C1-0.447%2C1-1S63.553%2C31%2C63%2C31z'/%3E%0A    %3Cpath fill='%23464646' d='M11.457%2C36.47l-3.863%2C1.035c-0.534%2C0.144-0.851%2C0.692-0.707%2C1.226   c0.143%2C0.533%2C0.69%2C0.85%2C1.225%2C0.706l3.863-1.035c0.533-0.143%2C0.85-0.69%2C0.707-1.225C12.539%2C36.644%2C11.99%2C36.327%2C11.457%2C36.47z'/%3E%0A    %3Cpath fill='%23464646' d='M49.32%2C22c0.277%2C0.479%2C0.888%2C0.643%2C1.367%2C0.366l8.66-5   c0.479-0.276%2C0.643-0.888%2C0.365-1.366c-0.275-0.479-0.887-0.642-1.365-0.365l-8.66%2C5C49.208%2C20.912%2C49.045%2C21.521%2C49.32%2C22z'/%3E%0A    %3Cpath fill='%23464646' d='M17.858%2C46.143c-0.39-0.391-1.023-0.389-1.414%2C0l-2.828%2C2.828   c-0.391%2C0.391-0.39%2C1.025%2C0.001%2C1.415c0.39%2C0.391%2C1.022%2C0.39%2C1.413-0.001l2.828-2.828C18.249%2C47.168%2C18.249%2C46.534%2C17.858%2C46.143z'/%3E%0A    %3Cpath fill='%23464646' d='M42%2C14.68c0.479%2C0.276%2C1.09%2C0.113%2C1.367-0.366l5-8.66   C48.644%2C5.175%2C48.48%2C4.563%2C48%2C4.287c-0.478-0.276-1.088-0.112-1.365%2C0.366l-4.999%2C8.661C41.358%2C13.793%2C41.522%2C14.403%2C42%2C14.68z'/%3E%0A    %3Cpath fill='%23464646' d='M26.824%2C51.318c-0.532-0.143-1.08%2C0.176-1.225%2C0.707l-1.035%2C3.863   c-0.143%2C0.535%2C0.176%2C1.083%2C0.709%2C1.226c0.533%2C0.144%2C1.08-0.173%2C1.223-0.708l1.035-3.863C27.676%2C52.012%2C27.359%2C51.463%2C26.824%2C51.318   z'/%3E%0A    %3Cpath fill='%23464646' d='M32%2C12c0.554%2C0%2C1.001-0.446%2C1.002-1V1c0-0.553-0.447-1-1.002-1   c-0.551%2C0-0.998%2C0.447-0.999%2C1l0.001%2C10C31.002%2C11.553%2C31.449%2C12%2C32%2C12z'/%3E%0A    %3Cpath fill='%23464646' d='M38.402%2C52.025c-0.141-0.532-0.689-0.85-1.225-0.707   c-0.533%2C0.143-0.848%2C0.692-0.707%2C1.225l1.035%2C3.863c0.144%2C0.535%2C0.693%2C0.85%2C1.227%2C0.707s0.849-0.689%2C0.705-1.225L38.402%2C52.025z'/%3E%0A    %3Cpath fill='%23464646' d='M20.637%2C14.312c0.275%2C0.479%2C0.887%2C0.643%2C1.363%2C0.367   c0.48-0.277%2C0.645-0.887%2C0.368-1.367l-5-8.66C17.092%2C4.174%2C16.48%2C4.01%2C16%2C4.287c-0.477%2C0.275-0.641%2C0.887-0.365%2C1.365   L20.637%2C14.312z'/%3E%0A    %3Cpath fill='%23464646' d='M47.558%2C46.142c-0.388-0.39-1.022-0.39-1.414%2C0   c-0.391%2C0.39-0.388%2C1.024%2C0%2C1.414l2.828%2C2.828c0.392%2C0.392%2C1.025%2C0.389%2C1.415-0.001c0.391-0.39%2C0.391-1.021-0.001-1.413   L47.558%2C46.142z'/%3E%0A    %3Cpath fill='%23464646' d='M4.654%2C17.365l8.662%2C4.999c0.477%2C0.276%2C1.088%2C0.113%2C1.363-0.364   c0.277-0.479%2C0.115-1.09-0.364-1.367l-8.661-5C5.176%2C15.356%2C4.564%2C15.52%2C4.287%2C16C4.013%2C16.477%2C4.176%2C17.089%2C4.654%2C17.365z'/%3E%0A    %3Cpath fill='%23464646' d='M52.027%2C38.4l3.863%2C1.035c0.535%2C0.145%2C1.082-0.176%2C1.225-0.709   c0.144-0.532-0.172-1.079-0.707-1.223l-3.863-1.035c-0.531-0.145-1.081%2C0.173-1.225%2C0.707C51.176%2C37.709%2C51.496%2C38.256%2C52.027%2C38.4   z'/%3E%0A    %3Cpath fill='%23464646' d='M12%2C32c0.001-0.554-0.445-1-0.998-1.002L1%2C31   c-0.552%2C0-1%2C0.445-1%2C1c0.001%2C0.551%2C0.448%2C1%2C1.001%2C1l10.001-0.002C11.553%2C32.998%2C12.001%2C32.552%2C12%2C32z'/%3E%0A    %3Cpath fill='%23464646' d='M52.545%2C27.529l3.863-1.035c0.535-0.143%2C0.85-0.693%2C0.706-1.227   c-0.142-0.531-0.688-0.848-1.224-0.705l-3.863%2C1.035c-0.533%2C0.141-0.85%2C0.691-0.707%2C1.225   C51.461%2C27.356%2C52.012%2C27.67%2C52.545%2C27.529z'/%3E%0A    %3Cpath fill='%23464646' d='M14.68%2C42c-0.275-0.48-0.886-0.644-1.365-0.368l-8.661%2C5.002   C4.176%2C46.91%2C4.01%2C47.52%2C4.287%2C48c0.277%2C0.477%2C0.889%2C0.641%2C1.367%2C0.365l8.66-5.002C14.791%2C43.088%2C14.957%2C42.479%2C14.68%2C42z'/%3E%0A    %3Cpath fill='%23464646' d='M46.144%2C17.856c0.389%2C0.392%2C1.022%2C0.388%2C1.414%2C0l2.828-2.828   c0.392-0.392%2C0.39-1.024-0.002-1.415c-0.388-0.39-1.021-0.391-1.412%2C0.001l-2.828%2C2.828C45.752%2C16.83%2C45.754%2C17.466%2C46.144%2C17.856   z'/%3E%0A    %3Cpath fill='%23464646' d='M22%2C49.32c-0.479-0.277-1.088-0.113-1.365%2C0.364l-5%2C8.663   c-0.275%2C0.478-0.115%2C1.088%2C0.365%2C1.365c0.479%2C0.274%2C1.09%2C0.11%2C1.367-0.367l4.998-8.662C22.641%2C50.207%2C22.48%2C49.597%2C22%2C49.32z'/%3E%0A    %3Cpath fill='%23464646' d='M37.178%2C12.68c0.531%2C0.145%2C1.078-0.176%2C1.225-0.707l1.035-3.863   c0.143-0.535-0.176-1.083-0.709-1.225c-0.531-0.144-1.08%2C0.172-1.223%2C0.707l-1.035%2C3.863C36.324%2C11.986%2C36.645%2C12.536%2C37.178%2C12.68   z'/%3E%0A    %3Cpath fill='%23464646' d='M32%2C52c-0.553-0.002-0.998%2C0.446-1%2C0.998l0.002%2C10.004   C31.002%2C63.552%2C31.445%2C64%2C32%2C64c0.553%2C0%2C1-0.449%2C1.001-1l-0.003-10.002C32.998%2C52.447%2C32.555%2C52%2C32%2C52z'/%3E%0A    %3Cpath fill='%23464646' d='M25.6%2C11.973c0.139%2C0.533%2C0.691%2C0.85%2C1.225%2C0.707   c0.532-0.141%2C0.846-0.691%2C0.707-1.225l-1.035-3.863c-0.145-0.535-0.693-0.851-1.227-0.706c-0.531%2C0.142-0.85%2C0.688-0.705%2C1.224   L25.6%2C11.973z'/%3E%0A    %3Cpath fill='%23464646' d='M43.363%2C49.687c-0.275-0.478-0.883-0.644-1.363-0.365   c-0.479%2C0.274-0.641%2C0.885-0.367%2C1.364l5.004%2C8.661c0.275%2C0.478%2C0.883%2C0.644%2C1.363%2C0.366c0.479-0.277%2C0.642-0.889%2C0.367-1.367   L43.363%2C49.687z'/%3E%0A    %3Cpath fill='%23464646' d='M16.443%2C17.856c0.387%2C0.394%2C1.023%2C0.39%2C1.414%2C0   c0.391-0.388%2C0.387-1.021%2C0-1.414l-2.828-2.828c-0.393-0.392-1.025-0.39-1.415%2C0.002c-0.39%2C0.388-0.392%2C1.021%2C0.001%2C1.412   L16.443%2C17.856z'/%3E%0A    %3Cpath fill='%23464646' d='M59.348%2C46.633l-8.663-4.997   c-0.478-0.276-1.087-0.116-1.363%2C0.366c-0.278%2C0.477-0.112%2C1.086%2C0.364%2C1.364l8.664%2C4.999c0.477%2C0.275%2C1.086%2C0.115%2C1.363-0.365   C59.988%2C47.521%2C59.824%2C46.91%2C59.348%2C46.633z'/%3E%0A    %3Cpath fill='%23464646' d='M11.974%2C25.599L8.11%2C24.563c-0.536-0.144-1.083%2C0.175-1.225%2C0.708   c-0.144%2C0.531%2C0.171%2C1.08%2C0.707%2C1.225l3.863%2C1.034c0.531%2C0.146%2C1.081-0.175%2C1.225-0.707C12.825%2C26.293%2C12.505%2C25.746%2C11.974%2C25.599   z'/%3E%0A%3C/g%3E%0A%3C/svg%3E%0A");
}

/* Dark mode specific icons with explicit colors */
.uxc-dark-mode .uxc-icon-moon:before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='800px' height='800px' viewBox='0 0 16 16' fill='%23e4e4e4' class='bi bi-moon-stars-fill'%3E%0A  %3Cpath d='M6 .278a.768.768 0 0 1 .08.858 7.208 7.208 0 0 0-.878 3.46c0 4.021 3.278 7.277 7.318 7.277.527 0 1.04-.055 1.533-.16a.787.787 0 0 1 .81.316.733.733 0 0 1-.031.893A8.349 8.349 0 0 1 8.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.752.752 0 0 1 6 .278z'/%3E%0A  %3Cpath d='M10.794 3.148a.217.217 0 0 1 .412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 0 1 0 .412l-1.162.387a1.734 1.734 0 0 0-1.097 1.097l-.387 1.162a.217.217 0 0 1-.412 0l-.387-1.162A1.734 1.734 0 0 0 9.31 6.593l-1.162-.387a.217.217 0 0 1 0-.412l1.162-.387a1.734 1.734 0 0 0 1.097-1.097l.387-1.162zM13.863.099a.145.145 0 0 1 .274 0l.258.774c.115.346.386.617.732.732l.774.258a.145.145 0 0 1 0 .274l-.774.258a1.156 1.156 0 0 0-.732.732l-.258.774a.145.145 0 0 1-.274 0l-.258-.774a1.156 1.156 0 0 0-.732-.732l-.774-.258a.145.145 0 0 1 0-.274l.774-.258c.346-.115.617-.386.732-.732L13.863.1z'/%3E%0A%3C/svg%3E%0A");
}

.uxc-dark-mode .uxc-icon-sun:before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%0A%3Cg%3E%0A    %3Cpath fill='%23e4e4e4' d='M31.998%2C14.002c-9.941%2C0-18%2C8.059-18%2C18s8.059%2C18%2C18%2C18   s18-8.059%2C18-18S41.939%2C14.002%2C31.998%2C14.002z M42.998%2C33.002c-0.553%2C0-1-0.447-1-1c0-5.523-4.478-10-10-10c-0.553%2C0-1-0.447-1-1   s0.447-1%2C1-1c6.627%2C0%2C12%2C5.373%2C12%2C12C43.998%2C32.555%2C43.551%2C33.002%2C42.998%2C33.002z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M63%2C31H53c-0.553%2C0-1%2C0.447-1%2C1s0.447%2C1%2C1%2C1h10   c0.553%2C0%2C1-0.447%2C1-1S63.553%2C31%2C63%2C31z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M11.457%2C36.47l-3.863%2C1.035c-0.534%2C0.144-0.851%2C0.692-0.707%2C1.226   c0.143%2C0.533%2C0.69%2C0.85%2C1.225%2C0.706l3.863-1.035c0.533-0.143%2C0.85-0.69%2C0.707-1.225C12.539%2C36.644%2C11.99%2C36.327%2C11.457%2C36.47z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M49.32%2C22c0.277%2C0.479%2C0.888%2C0.643%2C1.367%2C0.366l8.66-5   c0.479-0.276%2C0.643-0.888%2C0.365-1.366c-0.275-0.479-0.887-0.642-1.365-0.365l-8.66%2C5C49.208%2C20.912%2C49.045%2C21.521%2C49.32%2C22z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M17.858%2C46.143c-0.39-0.391-1.023-0.389-1.414%2C0l-2.828%2C2.828   c-0.391%2C0.391-0.39%2C1.025%2C0.001%2C1.415c0.39%2C0.391%2C1.022%2C0.39%2C1.413-0.001l2.828-2.828C18.249%2C47.168%2C18.249%2C46.534%2C17.858%2C46.143z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M42%2C14.68c0.479%2C0.276%2C1.09%2C0.113%2C1.367-0.366l5-8.66   C48.644%2C5.175%2C48.48%2C4.563%2C48%2C4.287c-0.478-0.276-1.088-0.112-1.365%2C0.366l-4.999%2C8.661C41.358%2C13.793%2C41.522%2C14.403%2C42%2C14.68z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M26.824%2C51.318c-0.532-0.143-1.08%2C0.176-1.225%2C0.707l-1.035%2C3.863   c-0.143%2C0.535%2C0.176%2C1.083%2C0.709%2C1.226c0.533%2C0.144%2C1.08-0.173%2C1.223-0.708l1.035-3.863C27.676%2C52.012%2C27.359%2C51.463%2C26.824%2C51.318   z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M32%2C12c0.554%2C0%2C1.001-0.446%2C1.002-1V1c0-0.553-0.447-1-1.002-1   c-0.551%2C0-0.998%2C0.447-0.999%2C1l0.001%2C10C31.002%2C11.553%2C31.449%2C12%2C32%2C12z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M38.402%2C52.025c-0.141-0.532-0.689-0.85-1.225-0.707   c-0.533%2C0.143-0.848%2C0.692-0.707%2C1.225l1.035%2C3.863c0.144%2C0.535%2C0.693%2C0.85%2C1.227%2C0.707s0.849-0.689%2C0.705-1.225L38.402%2C52.025z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M20.637%2C14.312c0.275%2C0.479%2C0.887%2C0.643%2C1.363%2C0.367   c0.48-0.277%2C0.645-0.887%2C0.368-1.367l-5-8.66C17.092%2C4.174%2C16.48%2C4.01%2C16%2C4.287c-0.477%2C0.275-0.641%2C0.887-0.365%2C1.365   L20.637%2C14.312z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M47.558%2C46.142c-0.388-0.39-1.022-0.39-1.414%2C0   c-0.391%2C0.39-0.388%2C1.024%2C0%2C1.414l2.828%2C2.828c0.392%2C0.392%2C1.025%2C0.389%2C1.415-0.001c0.391-0.39%2C0.391-1.021-0.001-1.413   L47.558%2C46.142z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M4.654%2C17.365l8.662%2C4.999c0.477%2C0.276%2C1.088%2C0.113%2C1.363-0.364   c0.277-0.479%2C0.115-1.09-0.364-1.367l-8.661-5C5.176%2C15.356%2C4.564%2C15.52%2C4.287%2C16C4.013%2C16.477%2C4.176%2C17.089%2C4.654%2C17.365z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M52.027%2C38.4l3.863%2C1.035c0.535%2C0.145%2C1.082-0.176%2C1.225-0.709   c0.144-0.532-0.172-1.079-0.707-1.223l-3.863-1.035c-0.531-0.145-1.081%2C0.173-1.225%2C0.707C51.176%2C37.709%2C51.496%2C38.256%2C52.027%2C38.4   z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M12%2C32c0.001-0.554-0.445-1-0.998-1.002L1%2C31   c-0.552%2C0-1%2C0.445-1%2C1c0.001%2C0.551%2C0.448%2C1%2C1.001%2C1l10.001-0.002C11.553%2C32.998%2C12.001%2C32.552%2C12%2C32z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M52.545%2C27.529l3.863-1.035c0.535-0.143%2C0.85-0.693%2C0.706-1.227   c-0.142-0.531-0.688-0.848-1.224-0.705l-3.863%2C1.035c-0.533%2C0.141-0.85%2C0.691-0.707%2C1.225   C51.461%2C27.356%2C52.012%2C27.67%2C52.545%2C27.529z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M14.68%2C42c-0.275-0.48-0.886-0.644-1.365-0.368l-8.661%2C5.002   C4.176%2C46.91%2C4.01%2C47.52%2C4.287%2C48c0.277%2C0.477%2C0.889%2C0.641%2C1.367%2C0.365l8.66-5.002C14.791%2C43.088%2C14.957%2C42.479%2C14.68%2C42z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M46.144%2C17.856c0.389%2C0.392%2C1.022%2C0.388%2C1.414%2C0l2.828-2.828   c0.392-0.392%2C0.39-1.024-0.002-1.415c-0.388-0.39-1.021-0.391-1.412%2C0.001l-2.828%2C2.828C45.752%2C16.83%2C45.754%2C17.466%2C46.144%2C17.856   z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M22%2C49.32c-0.479-0.277-1.088-0.113-1.365%2C0.364l-5%2C8.663   c-0.275%2C0.478-0.115%2C1.088%2C0.365%2C1.365c0.479%2C0.274%2C1.09%2C0.11%2C1.367-0.367l4.998-8.662C22.641%2C50.207%2C22.48%2C49.597%2C22%2C49.32z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M37.178%2C12.68c0.531%2C0.145%2C1.078-0.176%2C1.225-0.707l1.035-3.863   c0.143-0.535-0.176-1.083-0.709-1.225c-0.531-0.144-1.08%2C0.172-1.223%2C0.707l-1.035%2C3.863C36.324%2C11.986%2C36.645%2C12.536%2C37.178%2C12.68   z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M32%2C52c-0.553-0.002-0.998%2C0.446-1%2C0.998l0.002%2C10.004   C31.002%2C63.552%2C31.445%2C64%2C32%2C64c0.553%2C0%2C1-0.449%2C1.001-1l-0.003-10.002C32.998%2C52.447%2C32.555%2C52%2C32%2C52z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M25.6%2C11.973c0.139%2C0.533%2C0.691%2C0.85%2C1.225%2C0.707   c0.532-0.141%2C0.846-0.691%2C0.707-1.225l-1.035-3.863c-0.145-0.535-0.693-0.851-1.227-0.706c-0.531%2C0.142-0.85%2C0.688-0.705%2C1.224   L25.6%2C11.973z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M43.363%2C49.687c-0.275-0.478-0.883-0.644-1.363-0.365   c-0.479%2C0.274-0.641%2C0.885-0.367%2C1.364l5.004%2C8.661c0.275%2C0.478%2C0.883%2C0.644%2C1.363%2C0.366c0.479-0.277%2C0.642-0.889%2C0.367-1.367   L43.363%2C49.687z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M16.443%2C17.856c0.387%2C0.394%2C1.023%2C0.39%2C1.414%2C0   c0.391-0.388%2C0.387-1.021%2C0-1.414l-2.828-2.828c-0.393-0.392-1.025-0.39-1.415%2C0.002c-0.39%2C0.388-0.392%2C1.021%2C0.001%2C1.412   L16.443%2C17.856z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M59.348%2C46.633l-8.663-4.997   c-0.478-0.276-1.087-0.116-1.363%2C0.366c-0.278%2C0.477-0.112%2C1.086%2C0.364%2C1.364l8.664%2C4.999c0.477%2C0.275%2C1.086%2C0.115%2C1.363-0.365   C59.988%2C47.521%2C59.824%2C46.91%2C59.348%2C46.633z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M11.974%2C25.599L8.11%2C24.563c-0.536-0.144-1.083%2C0.175-1.225%2C0.708   c-0.144%2C0.531%2C0.171%2C1.08%2C0.707%2C1.225l3.863%2C1.034c0.531%2C0.146%2C1.081-0.175%2C1.225-0.707C12.825%2C26.293%2C12.505%2C25.746%2C11.974%2C25.599   z'/%3E%0A%3C/g%3E%0A%3C/svg%3E%0A");
}

/* Ensure theme toggle button centers the icon properly */
#uxc-theme-toggle i {
  display: inline-block;
  width: 16px;
  height: 16px;
  line-height: 16px;
  vertical-align: middle;
}

/* Theme toggle: 3-state (Light/Dark/System). Icon + label driven by data-uxc-theme (set by admin.js). */
#uxc-theme-toggle .uxc-theme-sun, #uxc-theme-toggle .uxc-theme-moon, #uxc-theme-toggle .uxc-theme-auto { display: none; }
#uxc-theme-toggle[data-uxc-theme="light"] .uxc-theme-sun,
#uxc-theme-toggle[data-uxc-theme="dark"] .uxc-theme-moon,
#uxc-theme-toggle[data-uxc-theme="system"] .uxc-theme-auto { display: block; }
#uxc-theme-toggle .uxc-theme-label-light, #uxc-theme-toggle .uxc-theme-label-dark, #uxc-theme-toggle .uxc-theme-label-system { display: none !important; }
#uxc-theme-toggle[data-uxc-theme="light"] .uxc-theme-label-light,
#uxc-theme-toggle[data-uxc-theme="dark"] .uxc-theme-label-dark,
#uxc-theme-toggle[data-uxc-theme="system"] .uxc-theme-label-system { display: inline !important; }

/* Refactor theme toggle button */
.uxc-btn-icon#uxc-theme-toggle,
.uxc-btn-icon[href*="pay.u.cash"] {
  width: 24px !important;
  height: 24px !important;
  border: none !important;
  padding: 0 !important;
  border-radius: 0;
  background: transparent !important;
  opacity: 1;
}

.uxc-btn-icon#uxc-theme-toggle:hover,
.uxc-btn-icon[href*="pay.u.cash"]:hover {
  background: transparent !important;
  border-color: transparent !important;
  opacity: 0.8;
}

.uxc-btn-icon#uxc-theme-toggle i,
.uxc-btn-icon[href*="pay.u.cash"] i {
  width: 16px !important;
  height: 16px !important;
  line-height: 20px !important;
  margin-top: -4px;
  display: inline-block !important;
}

/* Ensure theme toggle icons render correctly */
.uxc-btn-icon#uxc-theme-toggle .uxc-icon-moon:before,
.uxc-btn-icon#uxc-theme-toggle .uxc-icon-sun:before {
  display: inline-block !important;
  width: 16px !important;
  height: 16px !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
}

/* Force correct icon SVGs for theme toggle in light mode */
.uxc-btn-icon#uxc-theme-toggle .uxc-icon-moon:before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='800px' height='800px' viewBox='0 0 16 16' fill='%23464646' class='bi bi-moon-stars-fill'%3E%0A  %3Cpath d='M6 .278a.768.768 0 0 1 .08.858 7.208 7.208 0 0 0-.878 3.46c0 4.021 3.278 7.277 7.318 7.277.527 0 1.04-.055 1.533-.16a.787.787 0 0 1 .81.316.733.733 0 0 1-.031.893A8.349 8.349 0 0 1 8.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.752.752 0 0 1 6 .278z'/%3E%0A  %3Cpath d='M10.794 3.148a.217.217 0 0 1 .412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 0 1 0 .412l-1.162.387a1.734 1.734 0 0 0-1.097 1.097l-.387 1.162a.217.217 0 0 1-.412 0l-.387-1.162A1.734 1.734 0 0 0 9.31 6.593l-1.162-.387a.217.217 0 0 1 0-.412l1.162-.387a1.734 1.734 0 0 0 1.097-1.097l.387-1.162zM13.863.099a.145.145 0 0 1 .274 0l.258.774c.115.346.386.617.732.732l.774.258a.145.145 0 0 1 0 .274l-.774.258a1.156 1.156 0 0 0-.732.732l-.258.774a.145.145 0 0 1-.274 0l-.258-.774a1.156 1.156 0 0 0-.732-.732l-.774-.258a.145.145 0 0 1 0-.274l.774-.258c.346-.115.617-.386.732-.732L13.863.1z'/%3E%0A%3C/svg%3E%0A") !important;
}

.uxc-btn-icon#uxc-theme-toggle .uxc-icon-sun:before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%0A%3Cg%3E%0A    %3Cpath fill='%23464646' d='M31.998%2C14.002c-9.941%2C0-18%2C8.059-18%2C18s8.059%2C18%2C18%2C18   s18-8.059%2C18-18S41.939%2C14.002%2C31.998%2C14.002z M42.998%2C33.002c-0.553%2C0-1-0.447-1-1c0-5.523-4.478-10-10-10c-0.553%2C0-1-0.447-1-1   s0.447-1%2C1-1c6.627%2C0%2C12%2C5.373%2C12%2C12C43.998%2C32.555%2C43.551%2C33.002%2C42.998%2C33.002z'/%3E%0A    %3Cpath fill='%23464646' d='M63%2C31H53c-0.553%2C0-1%2C0.447-1%2C1s0.447%2C1%2C1%2C1h10   c0.553%2C0%2C1-0.447%2C1-1S63.553%2C31%2C63%2C31z'/%3E%0A    %3Cpath fill='%23464646' d='M11.457%2C36.47l-3.863%2C1.035c-0.534%2C0.144-0.851%2C0.692-0.707%2C1.226   c0.143%2C0.533%2C0.69%2C0.85%2C1.225%2C0.706l3.863-1.035c0.533-0.143%2C0.85-0.69%2C0.707-1.225C12.539%2C36.644%2C11.99%2C36.327%2C11.457%2C36.47z'/%3E%0A    %3Cpath fill='%23464646' d='M49.32%2C22c0.277%2C0.479%2C0.888%2C0.643%2C1.367%2C0.366l8.66-5   c0.479-0.276%2C0.643-0.888%2C0.365-1.366c-0.275-0.479-0.887-0.642-1.365-0.365l-8.66%2C5C49.208%2C20.912%2C49.045%2C21.521%2C49.32%2C22z'/%3E%0A    %3Cpath fill='%23464646' d='M17.858%2C46.143c-0.39-0.391-1.023-0.389-1.414%2C0l-2.828%2C2.828   c-0.391%2C0.391-0.39%2C1.025%2C0.001%2C1.415c0.39%2C0.391%2C1.022%2C0.39%2C1.413-0.001l2.828-2.828C18.249%2C47.168%2C18.249%2C46.534%2C17.858%2C46.143z'/%3E%0A    %3Cpath fill='%23464646' d='M42%2C14.68c0.479%2C0.276%2C1.09%2C0.113%2C1.367-0.366l5-8.66   C48.644%2C5.175%2C48.48%2C4.563%2C48%2C4.287c-0.478-0.276-1.088-0.112-1.365%2C0.366l-4.999%2C8.661C41.358%2C13.793%2C41.522%2C14.403%2C42%2C14.68z'/%3E%0A    %3Cpath fill='%23464646' d='M26.824%2C51.318c-0.532-0.143-1.08%2C0.176-1.225%2C0.707l-1.035%2C3.863   c-0.143%2C0.535%2C0.176%2C1.083%2C0.709%2C1.226c0.533%2C0.144%2C1.08-0.173%2C1.223-0.708l1.035-3.863C27.676%2C52.012%2C27.359%2C51.463%2C26.824%2C51.318   z'/%3E%0A    %3Cpath fill='%23464646' d='M32%2C12c0.554%2C0%2C1.001-0.446%2C1.002-1V1c0-0.553-0.447-1-1.002-1   c-0.551%2C0-0.998%2C0.447-0.999%2C1l0.001%2C10C31.002%2C11.553%2C31.449%2C12%2C32%2C12z'/%3E%0A    %3Cpath fill='%23464646' d='M38.402%2C52.025c-0.141-0.532-0.689-0.85-1.225-0.707   c-0.533%2C0.143-0.848%2C0.692-0.707%2C1.225l1.035%2C3.863c0.144%2C0.535%2C0.693%2C0.85%2C1.227%2C0.707s0.849-0.689%2C0.705-1.225L38.402%2C52.025z'/%3E%0A    %3Cpath fill='%23464646' d='M20.637%2C14.312c0.275%2C0.479%2C0.887%2C0.643%2C1.363%2C0.367   c0.48-0.277%2C0.645-0.887%2C0.368-1.367l-5-8.66C17.092%2C4.174%2C16.48%2C4.01%2C16%2C4.287c-0.477%2C0.275-0.641%2C0.887-0.365%2C1.365   L20.637%2C14.312z'/%3E%0A    %3Cpath fill='%23464646' d='M47.558%2C46.142c-0.388-0.39-1.022-0.39-1.414%2C0   c-0.391%2C0.39-0.388%2C1.024%2C0%2C1.414l2.828%2C2.828c0.392%2C0.392%2C1.025%2C0.389%2C1.415-0.001c0.391-0.39%2C0.391-1.021-0.001-1.413   L47.558%2C46.142z'/%3E%0A    %3Cpath fill='%23464646' d='M4.654%2C17.365l8.662%2C4.999c0.477%2C0.276%2C1.088%2C0.113%2C1.363-0.364   c0.277-0.479%2C0.115-1.09-0.364-1.367l-8.661-5C5.176%2C15.356%2C4.564%2C15.52%2C4.287%2C16C4.013%2C16.477%2C4.176%2C17.089%2C4.654%2C17.365z'/%3E%0A    %3Cpath fill='%23464646' d='M52.027%2C38.4l3.863%2C1.035c0.535%2C0.145%2C1.082-0.176%2C1.225-0.709   c0.144-0.532-0.172-1.079-0.707-1.223l-3.863-1.035c-0.531-0.145-1.081%2C0.173-1.225%2C0.707C51.176%2C37.709%2C51.496%2C38.256%2C52.027%2C38.4   z'/%3E%0A    %3Cpath fill='%23464646' d='M12%2C32c0.001-0.554-0.445-1-0.998-1.002L1%2C31   c-0.552%2C0-1%2C0.445-1%2C1c0.001%2C0.551%2C0.448%2C1%2C1.001%2C1l10.001-0.002C11.553%2C32.998%2C12.001%2C32.552%2C12%2C32z'/%3E%0A    %3Cpath fill='%23464646' d='M52.545%2C27.529l3.863-1.035c0.535-0.143%2C0.85-0.693%2C0.706-1.227   c-0.142-0.531-0.688-0.848-1.224-0.705l-3.863%2C1.035c-0.533%2C0.141-0.85%2C0.691-0.707%2C1.225   C51.461%2C27.356%2C52.012%2C27.67%2C52.545%2C27.529z'/%3E%0A    %3Cpath fill='%23464646' d='M14.68%2C42c-0.275-0.48-0.886-0.644-1.365-0.368l-8.661%2C5.002   C4.176%2C46.91%2C4.01%2C47.52%2C4.287%2C48c0.277%2C0.477%2C0.889%2C0.641%2C1.367%2C0.365l8.66-5.002C14.791%2C43.088%2C14.957%2C42.479%2C14.68%2C42z'/%3E%0A    %3Cpath fill='%23464646' d='M46.144%2C17.856c0.389%2C0.392%2C1.022%2C0.388%2C1.414%2C0l2.828-2.828   c0.392-0.392%2C0.39-1.024-0.002-1.415c-0.388-0.39-1.021-0.391-1.412%2C0.001l-2.828%2C2.828C45.752%2C16.83%2C45.754%2C17.466%2C46.144%2C17.856   z'/%3E%0A    %3Cpath fill='%23464646' d='M22%2C49.32c-0.479-0.277-1.088-0.113-1.365%2C0.364l-5%2C8.663   c-0.275%2C0.478-0.115%2C1.088%2C0.365%2C1.365c0.479%2C0.274%2C1.09%2C0.11%2C1.367-0.367l4.998-8.662C22.641%2C50.207%2C22.48%2C49.597%2C22%2C49.32z'/%3E%0A    %3Cpath fill='%23464646' d='M37.178%2C12.68c0.531%2C0.145%2C1.078-0.176%2C1.225-0.707l1.035-3.863   c0.143-0.535-0.176-1.083-0.709-1.225c-0.531-0.144-1.08%2C0.172-1.223%2C0.707l-1.035%2C3.863C36.324%2C11.986%2C36.645%2C12.536%2C37.178%2C12.68   z'/%3E%0A    %3Cpath fill='%23464646' d='M32%2C52c-0.553-0.002-0.998%2C0.446-1%2C0.998l0.002%2C10.004   C31.002%2C63.552%2C31.445%2C64%2C32%2C64c0.553%2C0%2C1-0.449%2C1.001-1l-0.003-10.002C32.998%2C52.447%2C32.555%2C52%2C32%2C52z'/%3E%0A    %3Cpath fill='%23464646' d='M25.6%2C11.973c0.139%2C0.533%2C0.691%2C0.85%2C1.225%2C0.707   c0.532-0.141%2C0.846-0.691%2C0.707-1.225l-1.035-3.863c-0.145-0.535-0.693-0.851-1.227-0.706c-0.531%2C0.142-0.85%2C0.688-0.705%2C1.224   L25.6%2C11.973z'/%3E%0A    %3Cpath fill='%23464646' d='M43.363%2C49.687c-0.275-0.478-0.883-0.644-1.363-0.365   c-0.479%2C0.274-0.641%2C0.885-0.367%2C1.364l5.004%2C8.661c0.275%2C0.478%2C0.883%2C0.644%2C1.363%2C0.366c0.479-0.277%2C0.642-0.889%2C0.367-1.367   L43.363%2C49.687z'/%3E%0A    %3Cpath fill='%23464646' d='M16.443%2C17.856c0.387%2C0.394%2C1.023%2C0.39%2C1.414%2C0   c0.391-0.388%2C0.387-1.021%2C0-1.414l-2.828-2.828c-0.393-0.392-1.025-0.39-1.415%2C0.002c-0.39%2C0.388-0.392%2C1.021%2C0.001%2C1.412   L16.443%2C17.856z'/%3E%0A    %3Cpath fill='%23464646' d='M59.348%2C46.633l-8.663-4.997   c-0.478-0.276-1.087-0.116-1.363%2C0.366c-0.278%2C0.477-0.112%2C1.086%2C0.364%2C1.364l8.664%2C4.999c0.477%2C0.275%2C1.086%2C0.115%2C1.363-0.365   C59.988%2C47.521%2C59.824%2C46.91%2C59.348%2C46.633z'/%3E%0A    %3Cpath fill='%23464646' d='M11.974%2C25.599L8.11%2C24.563c-0.536-0.144-1.083%2C0.175-1.225%2C0.708   c-0.144%2C0.531%2C0.171%2C1.08%2C0.707%2C1.225l3.863%2C1.034c0.531%2C0.146%2C1.081-0.175%2C1.225-0.707C12.825%2C26.293%2C12.505%2C25.746%2C11.974%2C25.599   z'/%3E%0A%3C/g%3E%0A%3C/svg%3E%0A") !important;
}

/* Fix vertical alignment for help icon */
.uxc-btn-icon[href*="pay.u.cash"] .uxc-icon-help {
  vertical-align: baseline;
  transform: translateY(-1px);
}

.uxc-dark-mode .uxc-btn-icon[href*="pay.u.cash"] .uxc-icon-help {
  color: var(--uxc-text-primary);
}

.uxc-btn-icon#uxc-theme-toggle i:before,
.uxc-btn-icon[href*="pay.u.cash"] i:before {
  width: 16px !important;
  height: 24px !important;
}

/* Ensure theme toggle icons are light colored in dark mode */
.uxc-dark-mode .uxc-btn-icon#uxc-theme-toggle .uxc-icon-moon,
.uxc-dark-mode .uxc-btn-icon#uxc-theme-toggle .uxc-icon-sun {
  color: #e4e4e4 !important;
}

.uxc-dark-mode .uxc-btn-icon#uxc-theme-toggle .uxc-icon-moon:before,
.uxc-dark-mode .uxc-btn-icon#uxc-theme-toggle .uxc-icon-sun:before {
  filter: brightness(1.2);
}

/* Force correct icon SVGs for theme toggle in dark mode */
.uxc-dark-mode .uxc-btn-icon#uxc-theme-toggle .uxc-icon-moon:before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='800px' height='800px' viewBox='0 0 16 16' fill='%23e4e4e4' class='bi bi-moon-stars-fill'%3E%0A  %3Cpath d='M6 .278a.768.768 0 0 1 .08.858 7.208 7.208 0 0 0-.878 3.46c0 4.021 3.278 7.277 7.318 7.277.527 0 1.04-.055 1.533-.16a.787.787 0 0 1 .81.316.733.733 0 0 1-.031.893A8.349 8.349 0 0 1 8.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.752.752 0 0 1 6 .278z'/%3E%0A  %3Cpath d='M10.794 3.148a.217.217 0 0 1 .412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 0 1 0 .412l-1.162.387a1.734 1.734 0 0 0-1.097 1.097l-.387 1.162a.217.217 0 0 1-.412 0l-.387-1.162A1.734 1.734 0 0 0 9.31 6.593l-1.162-.387a.217.217 0 0 1 0-.412l1.162-.387a1.734 1.734 0 0 0 1.097-1.097l.387-1.162zM13.863.099a.145.145 0 0 1 .274 0l.258.774c.115.346.386.617.732.732l.774.258a.145.145 0 0 1 0 .274l-.774.258a1.156 1.156 0 0 0-.732.732l-.258.774a.145.145 0 0 1-.274 0l-.258-.774a1.156 1.156 0 0 0-.732-.732l-.774-.258a.145.145 0 0 1 0-.274l.774-.258c.346-.115.617-.386.732-.732L13.863.1z'/%3E%0A%3C/svg%3E%0A") !important;
}

.uxc-dark-mode .uxc-btn-icon#uxc-theme-toggle .uxc-icon-sun:before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%0A%3Cg%3E%0A    %3Cpath fill='%23e4e4e4' d='M31.998%2C14.002c-9.941%2C0-18%2C8.059-18%2C18s8.059%2C18%2C18%2C18   s18-8.059%2C18-18S41.939%2C14.002%2C31.998%2C14.002z M42.998%2C33.002c-0.553%2C0-1-0.447-1-1c0-5.523-4.478-10-10-10c-0.553%2C0-1-0.447-1-1   s0.447-1%2C1-1c6.627%2C0%2C12%2C5.373%2C12%2C12C43.998%2C32.555%2C43.551%2C33.002%2C42.998%2C33.002z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M63%2C31H53c-0.553%2C0-1%2C0.447-1%2C1s0.447%2C1%2C1%2C1h10   c0.553%2C0%2C1-0.447%2C1-1S63.553%2C31%2C63%2C31z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M11.457%2C36.47l-3.863%2C1.035c-0.534%2C0.144-0.851%2C0.692-0.707%2C1.226   c0.143%2C0.533%2C0.69%2C0.85%2C1.225%2C0.706l3.863-1.035c0.533-0.143%2C0.85-0.69%2C0.707-1.225C12.539%2C36.644%2C11.99%2C36.327%2C11.457%2C36.47z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M49.32%2C22c0.277%2C0.479%2C0.888%2C0.643%2C1.367%2C0.366l8.66-5   c0.479-0.276%2C0.643-0.888%2C0.365-1.366c-0.275-0.479-0.887-0.642-1.365-0.365l-8.66%2C5C49.208%2C20.912%2C49.045%2C21.521%2C49.32%2C22z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M17.858%2C46.143c-0.39-0.391-1.023-0.389-1.414%2C0l-2.828%2C2.828   c-0.391%2C0.391-0.39%2C1.025%2C0.001%2C1.415c0.39%2C0.391%2C1.022%2C0.39%2C1.413-0.001l2.828-2.828C18.249%2C47.168%2C18.249%2C46.534%2C17.858%2C46.143z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M42%2C14.68c0.479%2C0.276%2C1.09%2C0.113%2C1.367-0.366l5-8.66   C48.644%2C5.175%2C48.48%2C4.563%2C48%2C4.287c-0.478-0.276-1.088-0.112-1.365%2C0.366l-4.999%2C8.661C41.358%2C13.793%2C41.522%2C14.403%2C42%2C14.68z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M26.824%2C51.318c-0.532-0.143-1.08%2C0.176-1.225%2C0.707l-1.035%2C3.863   c-0.143%2C0.535%2C0.176%2C1.083%2C0.709%2C1.226c0.533%2C0.144%2C1.08-0.173%2C1.223-0.708l1.035-3.863C27.676%2C52.012%2C27.359%2C51.463%2C26.824%2C51.318   z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M32%2C12c0.554%2C0%2C1.001-0.446%2C1.002-1V1c0-0.553-0.447-1-1.002-1   c-0.551%2C0-0.998%2C0.447-0.999%2C1l0.001%2C10C31.002%2C11.553%2C31.449%2C12%2C32%2C12z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M38.402%2C52.025c-0.141-0.532-0.689-0.85-1.225-0.707   c-0.533%2C0.143-0.848%2C0.692-0.707%2C1.225l1.035%2C3.863c0.144%2C0.535%2C0.693%2C0.85%2C1.227%2C0.707s0.849-0.689%2C0.705-1.225L38.402%2C52.025z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M20.637%2C14.312c0.275%2C0.479%2C0.887%2C0.643%2C1.363%2C0.367   c0.48-0.277%2C0.645-0.887%2C0.368-1.367l-5-8.66C17.092%2C4.174%2C16.48%2C4.01%2C16%2C4.287c-0.477%2C0.275-0.641%2C0.887-0.365%2C1.365   L20.637%2C14.312z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M47.558%2C46.142c-0.388-0.39-1.022-0.39-1.414%2C0   c-0.391%2C0.39-0.388%2C1.024%2C0%2C1.414l2.828%2C2.828c0.392%2C0.392%2C1.025%2C0.389%2C1.415-0.001c0.391-0.39%2C0.391-1.021-0.001-1.413   L47.558%2C46.142z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M4.654%2C17.365l8.662%2C4.999c0.477%2C0.276%2C1.088%2C0.113%2C1.363-0.364   c0.277-0.479%2C0.115-1.09-0.364-1.367l-8.661-5C5.176%2C15.356%2C4.564%2C15.52%2C4.287%2C16C4.013%2C16.477%2C4.176%2C17.089%2C4.654%2C17.365z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M52.027%2C38.4l3.863%2C1.035c0.535%2C0.145%2C1.082-0.176%2C1.225-0.709   c0.144-0.532-0.172-1.079-0.707-1.223l-3.863-1.035c-0.531-0.145-1.081%2C0.173-1.225%2C0.707C51.176%2C37.709%2C51.496%2C38.256%2C52.027%2C38.4   z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M12%2C32c0.001-0.554-0.445-1-0.998-1.002L1%2C31   c-0.552%2C0-1%2C0.445-1%2C1c0.001%2C0.551%2C0.448%2C1%2C1.001%2C1l10.001-0.002C11.553%2C32.998%2C12.001%2C32.552%2C12%2C32z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M52.545%2C27.529l3.863-1.035c0.535-0.143%2C0.85-0.693%2C0.706-1.227   c-0.142-0.531-0.688-0.848-1.224-0.705l-3.863%2C1.035c-0.533%2C0.141-0.85%2C0.691-0.707%2C1.225   C51.461%2C27.356%2C52.012%2C27.67%2C52.545%2C27.529z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M14.68%2C42c-0.275-0.48-0.886-0.644-1.365-0.368l-8.661%2C5.002   C4.176%2C46.91%2C4.01%2C47.52%2C4.287%2C48c0.277%2C0.477%2C0.889%2C0.641%2C1.367%2C0.365l8.66-5.002C14.791%2C43.088%2C14.957%2C42.479%2C14.68%2C42z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M46.144%2C17.856c0.389%2C0.392%2C1.022%2C0.388%2C1.414%2C0l2.828-2.828   c0.392-0.392%2C0.39-1.024-0.002-1.415c-0.388-0.39-1.021-0.391-1.412%2C0.001l-2.828%2C2.828C45.752%2C16.83%2C45.754%2C17.466%2C46.144%2C17.856   z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M22%2C49.32c-0.479-0.277-1.088-0.113-1.365%2C0.364l-5%2C8.663   c-0.275%2C0.478-0.115%2C1.088%2C0.365%2C1.365c0.479%2C0.274%2C1.09%2C0.11%2C1.367-0.367l4.998-8.662C22.641%2C50.207%2C22.48%2C49.597%2C22%2C49.32z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M37.178%2C12.68c0.531%2C0.145%2C1.078-0.176%2C1.225-0.707l1.035-3.863   c0.143-0.535-0.176-1.083-0.709-1.225c-0.531-0.144-1.08%2C0.172-1.223%2C0.707l-1.035%2C3.863C36.324%2C11.986%2C36.645%2C12.536%2C37.178%2C12.68   z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M32%2C52c-0.553-0.002-0.998%2C0.446-1%2C0.998l0.002%2C10.004   C31.002%2C63.552%2C31.445%2C64%2C32%2C64c0.553%2C0%2C1-0.449%2C1.001-1l-0.003-10.002C32.998%2C52.447%2C32.555%2C52%2C32%2C52z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M25.6%2C11.973c0.139%2C0.533%2C0.691%2C0.85%2C1.225%2C0.707   c0.532-0.141%2C0.846-0.691%2C0.707-1.225l-1.035-3.863c-0.145-0.535-0.693-0.851-1.227-0.706c-0.531%2C0.142-0.85%2C0.688-0.705%2C1.224   L25.6%2C11.973z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M43.363%2C49.687c-0.275-0.478-0.883-0.644-1.363-0.365   c-0.479%2C0.274-0.641%2C0.885-0.367%2C1.364l5.004%2C8.661c0.275%2C0.478%2C0.883%2C0.644%2C1.363%2C0.366c0.479-0.277%2C0.642-0.889%2C0.367-1.367   L43.363%2C49.687z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M16.443%2C17.856c0.387%2C0.394%2C1.023%2C0.39%2C1.414%2C0   c0.391-0.388%2C0.387-1.021%2C0-1.414l-2.828-2.828c-0.393-0.392-1.025-0.39-1.415%2C0.002c-0.39%2C0.388-0.392%2C1.021%2C0.001%2C1.412   L16.443%2C17.856z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M59.348%2C46.633l-8.663-4.997   c-0.478-0.276-1.087-0.116-1.363%2C0.366c-0.278%2C0.477-0.112%2C1.086%2C0.364%2C1.364l8.664%2C4.999c0.477%2C0.275%2C1.086%2C0.115%2C1.363-0.365   C59.988%2C47.521%2C59.824%2C46.91%2C59.348%2C46.633z'/%3E%0A    %3Cpath fill='%23e4e4e4' d='M11.974%2C25.599L8.11%2C24.563c-0.536-0.144-1.083%2C0.175-1.225%2C0.708   c-0.144%2C0.531%2C0.171%2C1.08%2C0.707%2C1.225l3.863%2C1.034c0.531%2C0.146%2C1.081-0.175%2C1.225-0.707C12.825%2C26.293%2C12.505%2C25.746%2C11.974%2C25.599   z'/%3E%0A%3C/g%3E%0A%3C/svg%3E%0A") !important;
}

@font-face {
  font-family: "Uncheckout";
  src: url("../media/fonts/regular.woff2?v2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap; }
@font-face {
  font-family: "Uncheckout";
  src: url("../media/fonts/medium.woff2?v2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap; }
@font-face {
  font-family: "Uncheckout";
  src: url("../media/fonts/bold.woff2?v2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap; }
@keyframes uxc-loading {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }
@keyframes uxc-fade-in {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@keyframes uxc-fade-out {
  0% {
    opacity: 1; }
  90% {
    opacity: 1; }
  100% {
    opacity: 0; } }
@keyframes uxc-fade-bottom {
  0% {
    transform: translateY(15px);
    opacity: 0; }
  100% {
    transform: none;
    opacity: 1; } }
@keyframes uxc-fade-bottom-center {
  0% {
    transform: translateY(15px);
    opacity: 0; }
  100% {
    transform: none;
    opacity: 1; } }
@keyframes uxc-pulse {
  0% {
    transform: scale(1); }
  50% {
    transform: scale(1.2); }
  100% {
    transform: scale(1); } }
@keyframes uxc-ping {
  0% {
    transform: scale(0.2);
    opacity: 0.8; }
  80% {
    transform: scale(1.2);
    opacity: 0; }
  100% {
    transform: scale(2.2);
    opacity: 0; } }
/* 

GLOBAL
==========================================================

*/
.uxc-main, .uxc-main input, .uxc-main select, .uxc-main textarea, .uxc-btn, button, .uxc-box, #uxc-lightbox {
  font-family: "Uncheckout", "Helvetica Neue", "Apple Color Emoji", Helvetica, Arial, sans-serif;
  box-sizing: border-box; }

.uxc-main * {
  box-sizing: content-box;
  outline: none; }
.uxc-main input, .uxc-main input[text], .uxc-main textarea, .uxc-main input[email] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }
.uxc-main input:-webkit-autofill, .uxc-main select:-webkit-autofill {
  box-shadow: 0 0 0 30px transparent inset !important; }
.uxc-main input:-webkit-autofill:focus, .uxc-main select:-webkit-autofill:focus {
  box-shadow: 0 0 0 30px transparent inset !important; }
.uxc-main input:-autofill, .uxc-main select:-autofill {
  box-shadow: 0 0 0 30px transparent inset !important; }
.uxc-main input:autofill:focus, .uxc-main select:autofill:focus {
  box-shadow: 0 0 0 30px transparent inset !important; }

.uxc-loading:before, .uxc-select p:before, .uxc-btn-main:before {
  font-family: "Uncheckout Icons";
  font-style: normal;
  font-weight: normal;
  text-transform: none;
  text-indent: 0;
  position: absolute;
  z-index: 1; }

.uxc-loader:before {
  content: "\e900"; }

.uxc-loading{
  position: relative;
  text-indent: -999995px;
  overflow: hidden;
  min-height: 150px;
  display: flex;
  align-items: center;
  justify-content: center; }
  .uxc-loading i{
    display: none; }
  .uxc-loading:before{
    content: "";
    animation: uxc-loading 0.6s linear infinite;
    display: block;
    width: 36px;
    height: 36px;
    border: 3px solid rgba(var(--uxc-accent-rgb), 0.2);
    border-top-color: var(--uxc-accent);
    border-radius: 0;
    position: absolute;
    text-indent: 0;
    left: 50%;
    top: calc(50% - 10px);
    margin-top: -18px;
    margin-left: -18px; }
  .uxc-loading:after{
    content: "Loading...";
    position: absolute;
    text-indent: 0;
    left: 50%;
    top: calc(50% - 10px);
    margin-top: 28px;
    transform: translateX(-50%);
    font-size: 13px;
    font-weight: 500;
    color: #5c7171;
    letter-spacing: 0.3px; }
  .uxc-loading div, .uxc-loading ul, .uxc-loading h1, .uxc-loading h2, .uxc-loading h3, .uxc-loading h4, .uxc-loading p, .uxc-loading span, .uxc-loading table, .uxc-loading a{
    opacity: 0; }

.uxc-btn.uxc-loading {
  min-height: 0;
  display: inline-block; }
  .uxc-btn.uxc-loading img {
    display: none !important; }
  .uxc-btn.uxc-loading:before {
    border: 3px solid rgba(255, 255, 255, 0.3);
    border-top-color: var(--uxc-border-color);
    width: 22px;
    height: 22px;
    margin-top: -11px;
    margin-left: -11px;
    top: 50%; }
  .uxc-btn.uxc-loading:after {
    display: none; }

.uxc-hidden {
  position: absolute !important;
  width: 0 !important;
  max-width: 0 !important;
  min-width: 0 !important;
  height: 0 !important;
  opacity: 0 !important;
  padding: 0 !important; }

.uxc-scrollbar {
  overflow-y: scroll !important;
  scrollbar-color: var(--uxc-accent) transparent;
  scrollbar-width: thin; }
  .uxc-scrollbar::-webkit-scrollbar {
    width: 6px; }
  .uxc-scrollbar::-webkit-scrollbar-track {
    background: #f5f5f5;
    border-radius: 0; }
  .uxc-scrollbar::-webkit-scrollbar-thumb {
    background: var(--uxc-accent);
    border-radius: 0;
    transition: all 0.3s ease;
    box-shadow: 0 1px 3px rgba(var(--uxc-accent-rgb), 0.3); }
  .uxc-scrollbar::-webkit-scrollbar-thumb:hover {
    background: color-mix(in srgb, var(--uxc-accent), #fff 18%);
    box-shadow: 0 1px 5px rgba(var(--uxc-accent-rgb), 0.5); }

/* 

TYPOGRAPHY
==========================================================

*/
.uxc-title {
  font-size: 18px;
  line-height: 18px;
  font-weight: 600;
  margin: 0; }

.uxc-text {
  font-size: 15px;
  letter-spacing: .2px; }

/* 

ELEMENTS
==========================================================

*/
.uxc-select ul, .uxc-ul {
  padding: 10px 0 !important;
  display: none;
  overflow: hidden;
  position: absolute;
  margin: 0;
  background: #fff;
  border-radius: 0;
  padding: 10px 0;
  box-shadow: 0 4px 14px 0 rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(0, 0, 0, 0.05);
  list-style: none;
  z-index: 9999995; }
  .uxc-select ul.uxc-active, .uxc-ul.uxc-active {
    display: block;
    margin-bottom: 15px; }
  .uxc-select ul li, .uxc-ul li {
    cursor: pointer;
    padding: 6px 25px 6px 12px;
    margin: 0;
    font-weight: 500;
    font-size: 13px;
    letter-spacing: .3px;
    line-height: 20px;
    white-space: nowrap;
    list-style: none;
    transition: all 0.1s; }
    .uxc-select ul li.uxc-active, .uxc-select ul li .uxc-label div, .uxc-ul li.uxc-active, .uxc-ul li .uxc-label div {
      display: none; }
    .uxc-select ul li .uxc-label, .uxc-ul li .uxc-label {
      transition: none;
      /* Tighter in list rows: no trailing gap, half the leading gap (operator 8/23). */
      margin: 0 0 0 7px;
      padding: 3px 0 3px 4px; }
    .uxc-select ul li:hover, .uxc-select ul li:hover .uxc-label, .uxc-ul li:hover, .uxc-ul li:hover .uxc-label {
      background-color: var(--uxc-accent);
      color: #fff;
      border-color: var(--uxc-border-color); }

.uxc-select {
  position: relative;
  color: #464646;
  font-size: 14px;
  height: 35px;
  line-height: 35px;
  display: inline-block; }
  .uxc-select p {
    position: relative;
    padding: 0 20px 0 0;
    margin: 0;
    cursor: pointer;
    font-weight: 500;
    letter-spacing: .3px;
    font-size: 13px !important;
    line-height: 35px !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: all 0.4s; }
    .uxc-select p span {
      font-weight: 400;
      opacity: 0.7; }
    .uxc-select p .uxc-label {
      border: none;
      margin: 0;
      font-size: 13px;
      line-height: 35px;
      padding: 0;
      opacity: 1;
      font-weight: 500; }
      .uxc-select p .uxc-label div {
        display: none; }
    .uxc-select p:before {
      content: "\61";
      top: 0;
      right: 1px;
      font-size: 9px;
      line-height: 35px; }
    .uxc-select p:hover, .uxc-select p:hover span {
      color: var(--uxc-accent); }
  .uxc-select.uxc-loading {
    overflow: visible; }
  .uxc-select.uxc-right ul {
    right: 0; }
  .uxc-select + .uxc-select {
    margin-left: 20px; }

.uxc-input {
  display: flex;
  justify-content: space-between;
  align-items: flex-start; }
  .uxc-input span {
    display: block;
    flex-grow: 1;
    font-weight: 600;
    font-size: 11px;
    letter-spacing: 0.3px;
    color: #464646; }
  .uxc-input input,
  .uxc-input select,
  .uxc-input textarea {
    position: static;
    border-radius: 0;
    color: #464646;
    font-size: 13px;
    line-height: 35px;
    font-weight: 400;
    border: 1px solid var(--uxc-border-color);
    background-color: transparent;
    outline: none;
    height: 42px;
    min-height: 42px;
    min-width: 170px;
    max-width: none;
    padding: 0 10px;
    transition: all 0.4s;
    width: 100%;
    margin: 0 !important;
    box-sizing: border-box;
    box-shadow: none; }
    .uxc-input input:focus, .uxc-input input.uxc-focus,
    .uxc-input select:focus,
    .uxc-input select.uxc-focus,
    .uxc-input textarea:focus,
    .uxc-input textarea.uxc-focus {
      border: 1px solid var(--uxc-accent);
      box-shadow: 0 0 5px rgba(39, 255, 222, 0.2);
      background: transparent;
      color: #464646;
      outline: none !important; }
  /* Hide number input spinners globally */
  input[type="number"] {
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
    appearance: textfield; }
  /* Hide number input spinners for WebKit browsers */
  input[type="number"]::-webkit-outer-spin-button,
  input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0; }
  /* Hide number input spinners for Firefox */
  input[type="number"] {
    -moz-appearance: textfield; }
  .uxc-input select {
    min-height: 37px; }
  .uxc-input textarea {
    line-height: 20px;
    min-height: 75px;
    padding: 8px 10px; }
  .uxc-input > div {
    padding-right: 30px; }
    .uxc-input > div p, .uxc-input > div p a {
      font-size: 13px;
      line-height: 22px;
      letter-spacing: 0.3px;
      margin: 5px 0 0 0;
      color: #5c7171;
      font-weight: 400; }
      .uxc-input > div p a, .uxc-input > div p a a {
        margin: 0 0 0 5px;
        text-decoration: none; }
        .uxc-input > div p a:hover, .uxc-input > div p a a:hover {
          text-decoration: underline; }
  .uxc-input input[type="checkbox"] {
    background: #fff;
    clear: none;
    cursor: pointer;
    display: inline-block;
    line-height: 0;
    height: 42px;
    min-height: 42px;
    width: 42px;
    min-width: 42px;
    outline: 0;
    padding: 0;
    margin: 0;
    text-align: center;
    vertical-align: middle;
    outline: none;
    box-shadow: none;
    background-color: transparent;
    -webkit-appearance: none; }
  .uxc-input input[type="checkbox"]:checked:before {
    content: "\e901" !important;
    font-family: "Uncheckout Icons" !important;
    font-style: normal !important;
    font-weight: normal !important;
    font-variant: normal !important;
    text-transform: none !important;
    line-height: 42px;
    font-size: 15px;
    color: var(--uxc-accent);
    margin: 0;
    width: 100%;
    height: 100%; }
  /* Raw form checkbox rows (label span + lone checkbox) sit on ONE line - label left,
     checkbox right - matching the settings data-type="checkbox" rows. :has() scopes it to
     rows that end in a checkbox; rows carrying hint divs or slider toggles keep their
     own layouts. Mirrored across the admin surfaces (pay + siblings). */
  .uxc-admin .uxc-input:has(> span + input[type="checkbox"]),
  .uxc-admin .uxc-input:has(> input[type="checkbox"]:last-child),
  .uxc-admin .uxc-input[data-type="checkbox"]:has(> input[type="checkbox"]) {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    flex-wrap: nowrap; }
  /* Custom domain on/off slider toggle — sits on the #custom-domain row, far right of the label line.
     Overrides the generic .uxc-input input[type=checkbox] 42x42 box + checkmark glyph for this control. */
  .uxc-premium-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; width: 100%; }
  .uxc-premium-toggle { position: relative; display: inline-block; width: 36px; height: 20px; margin: 0 0 0 12px; cursor: pointer; flex-shrink: 0; }
  .uxc-input .uxc-premium-toggle input[type="checkbox"] { opacity: 0 !important; width: 0 !important; height: 0 !important; min-width: 0 !important; min-height: 0 !important; margin: 0 !important; display: block !important; -webkit-appearance: none !important; }
  .uxc-input .uxc-premium-toggle input[type="checkbox"]:checked:before { content: "" !important; }
  .uxc-premium-slider { position: absolute; inset: 0; background: #666; border-radius: 0; transition: background .2s; }
  .uxc-premium-slider:before { content: ""; position: absolute; height: 14px; width: 14px; left: 3px; top: 3px; background: #fff; border-radius: 0; transition: transform .2s; box-shadow: 0 1px 2px rgba(0,0,0,.25); }
  .uxc-premium-toggle input[type="checkbox"]:checked + .uxc-premium-slider { background: var(--uxc-accent); }
  .uxc-premium-toggle input[type="checkbox"]:checked + .uxc-premium-slider:before { transform: translateX(16px); }
  .uxc-premium-toggle input[type="checkbox"]:disabled + .uxc-premium-slider { background: #555; cursor: not-allowed; }
  /* Dark-mode color toggle: same slider visual as .uxc-premium-toggle (reuses the
     .uxc-premium-slider track + knob) but a dedicated label class so the premium-toggle
     JS hooks, which drive -enabled meta-values and disable the input when off, leave this
     genuine checkbox value alone. No em dashes. */
  .uxc-color-toggle { position: relative; display: inline-block; width: 36px; height: 20px; margin: 0 0 0 12px; cursor: pointer; flex-shrink: 0; }
  .uxc-input .uxc-color-toggle input[type="checkbox"] { opacity: 0 !important; width: 0 !important; height: 0 !important; min-width: 0 !important; min-height: 0 !important; margin: 0 !important; display: block !important; -webkit-appearance: none !important; }
  .uxc-color-toggle input[type="checkbox"]:checked + .uxc-premium-slider { background: var(--uxc-accent); }
  .uxc-color-toggle input[type="checkbox"]:checked + .uxc-premium-slider:before { transform: translateX(16px); }
  .uxc-input + .uxc-input {
    margin-top: 10px; }
  .uxc-input.uxc-error input, .uxc-input.uxc-error select, .uxc-input.uxc-error textarea {
    border: 1px solid var(--uxc-error);
    box-shadow: 0 0 5px rgba(202, 52, 52, 0.25); }

.uxc-input-btn .uxc-btn {
  margin-left: 15px;
  border-radius: 0;
  height: 39px !important;
  line-height: 39px !important;
  flex: 0 0 auto; }
  .uxc-input-btn .uxc-btn:not(:hover) {
    border-color: var(--uxc-border-color); }
  .uxc-input-btn .uxc-btn.uxc-loading:before {
    border-color: rgba(var(--uxc-accent-rgb), 0.2);
    border-top-color: var(--uxc-accent); }

.uxc-label, .uxc-admin .uxc-input span.uxc-label {
  display: inline-block;
  width: auto;
  min-width: 0;
  margin: 0 15px;
  border: 1px solid var(--uxc-accent);
  color: var(--uxc-accent);
  font-size: 11px;
  line-height: 11px;
  padding: 3px 7px;
  font-weight: 500;
  border-radius: 0;
  letter-spacing: .2px;
  white-space: nowrap;
  transition: color .4s, border-color .4s, background-color .4s; }

.uxc-clipboard {
  cursor: pointer;
  z-index: 2;
  transition: all 0.4s; }

.uxc-toolip-cnt {
  position: relative;
  overflow: visible !important; }
  .uxc-toolip-cnt:hover .uxc-toolip, .uxc-toolip-cnt.uxc-active .uxc-toolip {
    display: block !important;
    animation: uxc-fade-bottom-center 1s; }

.uxc-toolip {
  position: absolute;
  display: none !important;
  top: 0;
  right: 0;
  transform: none;
  font-weight: 400 !important;
  font-style: normal;
  white-space: nowrap;
  letter-spacing: .2px;
  font-size: 13px !important;
  line-height: 20px;
  z-index: 995;
  background: #464646;
  border-radius: 0;
  padding: 3px 12px;
  color: #fff !important;
  margin-top: -40px;
  min-width: 0 !important;
  max-width: none !important;
  width: auto !important;
  text-align: center; }
  .uxc-toolip:after {
    position: absolute;
    bottom: -3px;
    right: 8px;
    transform: translateY(8px);
    content: " ";
    border-width: 6px;
    border-style: solid;
    border-color: var(--uxc-border-color) transparent transparent; }

.uxc-info {
  font-size: 13px;
  line-height: 20px;
  color: #fff;
  background-color: #ca3434;
  right: 0;
  left: 0;
  top: 0;
  padding: 15px 20px;
  border-radius: 0;
  display: none; }
  .uxc-info:not(:empty) {
    display: block;
    animation: uxc-fade-animation 0.4s; }

.uxc-btn {
  font-size: 14px;
  line-height: 39px;
  letter-spacing: 0.5px;
  font-weight: 500;
  border-radius: 0;
  min-width: 0;
  background-color: transparent;
  text-decoration: none;
  color: var(--uxc-accent);
  height: 38px;
  position: relative;
  display: inline-block;
  border: 1px solid var(--uxc-accent);
  text-align: center;
  cursor: pointer;
  outline: none;
  box-shadow: none;
  box-sizing: border-box;
  padding: 0 10px;
  overflow: hidden;
  white-space: nowrap;
  transition: color .4s, background-color .4s, border-color .4s, opacity .4s; }
  .uxc-btn i {
    font-size: 17px;
    display: inline-block;
    font-weight: 400;
    line-height: 0;
    transform: translateY(3px);
    margin: 0 7px 0 -5px; }
  .uxc-btn.uxc-btn-border {
    background: transparent !important;
    border: 1px solid var(--uxc-accent);
    color: var(--uxc-accent);
    height: 36px;
    line-height: 37px; }
    .uxc-btn.uxc-btn-border:hover, .uxc-btn.uxc-btn-border:active {
      color: #000;
      border-color: var(--uxc-border-color); }
  .uxc-btn.uxc-btn-img {
    padding-left: 43px;
    padding-right: 15px; }
    .uxc-btn.uxc-btn-img img {
      position: absolute;
      height: 18px;
      left: 16px;
      top: 7px; }
  .uxc-btn:hover, .uxc-btn:active {
    background-color: transparent;
    color: #000;
    border-color: var(--uxc-border-color); }
  .uxc-btn.uxc-disabled {
    background-color: #e3ebeb !important;
    color: #aeb7b7 !important;
    cursor: not-allowed !important; }

.uxc-btn-icon {
  position: relative;
  cursor: pointer;
  width: 33px;
  height: 33px;
  border: 1px solid rgba(255, 255, 255, 0);
  opacity: 1;
  border-radius: 0;
  display: inline-block;
  text-align: center;
  transition: all 0.4s;
  text-decoration: none !important;
  overflow: hidden;
  color: #464646; }
  .uxc-btn-icon i {
    line-height: 33px;
    font-size: 18px;
    width: 33px; }
    .uxc-btn-icon i:before {
      font-size: 18px;
      line-height: 35px; }
  .uxc-btn-icon:before {
    font-size: 23px;
    line-height: 35px; }
  .uxc-btn-icon.uxc-loading:before {
    width: 22px;
    height: 22px;
    border: 3px solid rgba(var(--uxc-accent-rgb), 0.2);
    border-top-color: var(--uxc-accent);
    border-radius: 0;
    margin-top: -11px;
    margin-left: -11px;
    line-height: 30px; }
  .uxc-btn-icon.uxc-loading:after {
    display: none; }
  .uxc-btn-icon:hover {
    opacity: 1;
    color: var(--uxc-accent); }
.uxc-btn-icon svg {
  width: 18px;
  height: 18px; }
.uxc-btn-icon.uxc-icon-btn-svg {
  display: inline-flex;
  align-items: center;
  justify-content: center; }
.uxc-checkouts-panel {
  flex: 0 0 100%;
  min-width: 0;
  max-width: 100%;
  margin-top: 15px;
  order: 10; }
  .uxc-checkouts-panel .uxc-transactions-info {
    margin-top: 0;
    min-width: 0;
    max-width: 100%; }
  .uxc-checkouts-panel pre {
    font-size: 12px;
    padding: 10px;
    margin: 10px 0 0;
    max-width: 100%;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    word-break: break-word;
    background: var(--uxc-bg-secondary, rgba(127, 127, 127, 0.06));
    border: 1px solid var(--uxc-border-color, rgba(127, 127, 127, 0.18)); }
  .uxc-checkouts-panel-actions {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 12px; }
    .uxc-checkouts-panel-actions .uxc-dl-row {
      display: flex;
      flex-wrap: wrap;
      gap: 8px; }

.uxc-btn-text {
  cursor: pointer;
  transition: all 0.4s; }
/* Icon-left-of-text buttons (e.g. Create Payment Request, + Add Staff): nudge the
   leading svg down to the text middle and give it breathing room before the label. */
.uxc-btn:not(.uxc-act):not(.uxc-pos-act):not(.uxc-upload-btn) > svg:first-child { vertical-align: middle; position: relative; top: -2px; margin-right: 8px; }
  .uxc-btn-text i {
    margin-right: 15px;
    display: inline-block; }
  .uxc-btn-text:hover {
    color: var(--uxc-accent); }

.uxc-btn-red:hover {
  border-color: var(--uxc-error) !important;
  color: #ca3434 !important;
  background-color: rgba(202, 52, 52, 0.1) !important; }
  .uxc-btn-red:hover i {
    color: #ca3434 !important; }
.uxc-btn-red.uxc-loading:before {
  border-color: rgba(202, 52, 52, 0.2);
  border-top-color: var(--uxc-error); }
.uxc-btn-red.uxc-link:hover:after {
  background-color: #ca3434 !important; }
.uxc-btn-red.uxc-link:hover {
  background-color: transparent !important; }

.uxc-link, .uxc-underline {
  cursor: pointer;
  letter-spacing: .5px;
  transition: all 0.4s; }
  .uxc-link:hover, .uxc-link:active, .uxc-underline:hover, .uxc-underline:active {
    color: var(--uxc-accent); }

.uxc-underline {
  position: relative;
  display: inline-block;
  text-decoration: none; }
  .uxc-underline:after {
    content: "";
    position: absolute;
    bottom: -3px;
    left: 0;
    right: 0;
    height: 1px;
    transition: all 0.4s;
    background-color: #888888; }
  .uxc-underline:hover:after {
    background-color: var(--uxc-accent); }

.uxc-box {
  max-width: 600px;
  margin: 30px auto;
  padding: 45px;
  border-radius: 0;
  background: transparent;
  position: relative; }
  .uxc-box + .uxc-box {
    margin-top: 15px; }

.uxc-flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  align-content: center; }
  .uxc-flex .uxc-input + .uxc-input {
    margin: 0 0 0 15px !important;
    padding-top: 0 !important;
    border: none !important; }

hr {
  display: block;
  clear: both;
  height: 0;
  margin: 30px 0; }

@keyframes uxc-lightbox-animation {
  0% {
    transform: translateY(-50px);
    opacity: 0; }
  100% {
    transform: translateY(0);
    opacity: 1; } }
/* 

GLOBAL
==========================================================

*/
body,
html {
  margin: 0;
  padding: 0;
  min-height: 100%;
  /* Body-appended overlays (mode banner/picker, toasts) sit OUTSIDE .uxc-main, whose font
     stack never reached them -> UA serif. The stack lives here so nothing renders serif. */
  font-family: "Uncheckout", "Helvetica Neue", "Apple Color Emoji", Helvetica, Arial, sans-serif; }

.uxc-loading-global {
  position: absolute;
  z-index: 99995;
  width: 36px;
  height: 36px;
  left: 50%;
  margin-left: -18px; }

/* 

ELEMENTS
==========================================================

*/
.uxc-nav-wide {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  padding: 4px 0 12px; }
/* When .uxc-nav-wide is also a .uxc-page-header (transactions bar), drop the gap so items sit flush like the dashboard header. */
.uxc-nav-wide.uxc-page-header { gap: 0; }
.uxc-nav-wide.uxc-page-header > #uxc-download-transitions,
.uxc-nav-wide.uxc-page-header > #uxc-filters,
.uxc-nav-wide.uxc-page-header > #uxc-filters-transactions,
.uxc-nav-wide.uxc-page-header > #uxc-filters-checkouts,
.uxc-nav-wide.uxc-page-header > #uxc-upload-checkouts,
.uxc-nav-wide.uxc-page-header > #uxc-checkouts-download { align-self: stretch; height: auto; width: 42px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; border-left: 1px solid var(--uxc-border-color, #e6e6e6); padding: 0; background: none; cursor: pointer; color: var(--uxc-text-muted, #999); }
/* SVG header icons sit 1px high vs the icon-font glyphs; nudge down to share the baseline. */
.uxc-nav-wide.uxc-page-header > #uxc-download-transitions svg, .uxc-nav-wide.uxc-page-header > #uxc-checkouts-download svg, .uxc-nav-wide.uxc-page-header > #uxc-filters-transactions svg, .uxc-nav-wide.uxc-page-header > #uxc-filters-checkouts svg, .uxc-nav-wide.uxc-page-header #uxc-create-checkout svg { position: relative; top: 1px; }
.uxc-nav-wide.uxc-page-header > #uxc-download-transitions i { position: relative; top: 2px; }
.uxc-nav-wide.uxc-page-header > .uxc-nav-filters { align-self: stretch; align-items: center; border-left: 1px solid var(--uxc-border-color, #e6e6e6); border-right: 1px solid var(--uxc-border-color, #e6e6e6); padding: 0 10px; }
/* Break the transactions header out of .uxc-body's left/right padding (match the dashboard header's edge-to-edge behavior). */
@media (min-width: 768px) {
  [data-area="transactions"] > .uxc-nav-wide.uxc-page-header { margin-left: calc(-1 * var(--uxc-content-left, 190px)); margin-right: -12px; padding-left: calc(var(--uxc-content-left, 172px) - 16px); padding-right: 0; }
}

.uxc-color-cnt {
  position: relative; }
  .uxc-color-cnt i {
    position: absolute;
    right: 12px;
    top: 25px;
    font-size: 10px;
    cursor: pointer;
    z-index: 2;
    transition: all 0.4s; }
    .uxc-color-cnt i:hover {
      color: #ca3434; }

[data-type="multi-input"] {
  margin-bottom: -15px; }
/* 15px below every settings input row (text/number/checkbox, e.g. 2FA "Active").
   Excludes buttons, the address rows (.uxc-addr-row; input nested), and .uxc-input
   rows (input nested in .uxc-setting-input; those keep their own rule above). */
[data-type]:has(> input, > select, > textarea):not([data-type="button"]):not(.uxc-addr-row) {
  margin-bottom: 15px; }
/* Stack the title above the input with a 5px gap for text/number rows. Checkboxes
   keep their label inline with the box, so they are excluded here. */
[data-type]:has(> input):not([data-type="checkbox"]):not([data-type="button"]):not(.uxc-addr-row) > span {
  display: block;
  margin-bottom: 5px; }
  [data-type="multi-input"] [data-type="checkbox"], [data-type="multi-input"] [data-type="button"] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start; }
    [data-type="multi-input"] [data-type="checkbox"] span, [data-type="multi-input"] [data-type="button"] span {
      max-width: 350px !important;
      width: auto !important;
      padding-top: 7px; }
    [data-type="multi-input"] [data-type="checkbox"] input, [data-type="multi-input"] [data-type="button"] input {
      margin-top: 0 !important; }
  [data-type="multi-input"] .uxc-btn {
    background: transparent;
    color: var(--uxc-accent);
    border: 1px solid var(--uxc-accent);
    margin-bottom: 15px; }
    [data-type="multi-input"] .uxc-btn:hover {
      border-color: var(--uxc-border-color);
      color: #000;
      background: transparent; }
    [data-type="multi-input"] .uxc-btn.uxc-loading:before {
      border-color: rgba(var(--uxc-accent-rgb), 0.2);
      border-top-color: var(--uxc-accent); }

[data-type="upload-file"] .uxc-btn-icon {
  min-width: 40px;
  height: 40px;
  border: 1px solid var(--uxc-border-color);
  margin-left: 5px;
  background-color: transparent;
  opacity: 1; }
  [data-type="upload-file"] .uxc-btn-icon i {
    line-height: 46px;
    color: #5c7171;
    transition: all 0.4s; }
  [data-type="upload-file"] .uxc-btn-icon:hover {
    border-color: var(--uxc-accent); }
    [data-type="upload-file"] .uxc-btn-icon:hover i {
      color: var(--uxc-accent); }

.uxc-flex .uxc-input {
  min-width: 0; }
  .uxc-flex .uxc-input input, .uxc-flex .uxc-input select {
    min-width: 0; }

.uxc-table {
  margin: 0;
  width: 100%;
  max-width: 100%;
  border-collapse: collapse;
  table-layout: auto; }
  .uxc-table th {
    white-space: nowrap;
    padding: 9px 15px;
    text-align: left;
    border-top: 1px solid var(--uxc-border-color, #e6e6e6);
    border-bottom: 1px solid var(--uxc-border-color, #e6e6e6);
    font-size: 15px;
    line-height: 20px;
    font-weight: 600;
    color: var(--uxc-text-primary, #1a1a1a);
    letter-spacing: .3px; }
  .uxc-table thead th:first-child { border-left: 1px solid var(--uxc-border-color, #e6e6e6); }
  .uxc-table thead th:last-child { border-right: 1px solid var(--uxc-border-color, #e6e6e6); }
  .uxc-dark-mode .uxc-table th {
    color: var(--uxc-text-primary);
    border-bottom-color: var(--uxc-border-color); }
  .uxc-table td {
    white-space: nowrap;
    padding: 12px 15px;
    text-align: left;
    font-size: 14px;
    height: auto;
    letter-spacing: .3px;
    border-bottom: 1px solid var(--uxc-border-color, #e6e6e6);
    transition: all 0.4s; }
  .uxc-dark-mode .uxc-table td {
    border-bottom-color: var(--uxc-border-color); }
  .uxc-table .uxc-title {
    font-weight: 500; }
    .uxc-table .uxc-title + .uxc-text {
      line-height: 15px;
      margin-top: 5px; }
  .uxc-table .uxc-title, .uxc-table .uxc-text, .uxc-table .uxc-link {
    font-size: 14px;
    white-space: nowrap;
    text-overflow: ellipsis; }
  .uxc-table .uxc-cell-wrap { white-space: normal; overflow-wrap: anywhere; }
  /* Hover = brand treatment, never a background wash: the row's cell borders + text + icons go
     gold (the grey fill historically hurt readability). Same shape as .uxc-chain-badge:hover. */
  .uxc-table tr:hover td {
    cursor: pointer;
    background-color: transparent;
    border-color: var(--uxc-accent) !important;
    color: var(--uxc-accent); }
  .uxc-table tr:hover td i, .uxc-table tr:hover td svg {
    color: var(--uxc-accent); }
  /* The console wraps every cell text in .uxc-title/.uxc-text; their own color (set in dark
     mode) beats td inheritance - target the wrappers directly so the gold reaches the VISIBLE
     text. Badges/pending pills keep their semantic colors. */
  .uxc-table tr:hover td .uxc-title,
  .uxc-table tr:hover td .uxc-text,
  .uxc-table tr:hover td .uxc-link {
    color: var(--uxc-accent); }
  .uxc-table img {
    max-height: 35px;
    margin-right: 15px; }
  .uxc-table .uxc-flex {
    justify-content: flex-start; }
  .uxc-table .uxc-text:empty {
    display: none; }
  .uxc-table .uxc-table-muted { color: var(--uxc-text-muted, #999); white-space: nowrap; }
  .uxc-table .uxc-table-actions { text-align: right; white-space: nowrap; }
  /* Landers list: desktop column polish (checkbox rail; icon actions right; status/layout nowrap). */
  @media (min-width: 769px) {
    #uxc-table-landers th:first-child, #uxc-table-landers td:first-child { width: 34px; }
    #uxc-table-landers th:last-child, #uxc-table-landers td:last-child { width: 1%; white-space: nowrap; text-align: right; }
    #uxc-table-landers td[data-label="Status"], #uxc-table-landers td[data-label="Layout"] { white-space: nowrap; }
  }
  /* Action buttons are icon-only squares by default (titles + aria-labels carry the labels):
     staff rows carry up to 5 actions and text labels overflow the card. Matches the mobile layout. */
  .uxc-pos-act-ico { display: inline-flex; }
  .uxc-pos-act-text { display: none; }
  .uxc-pos-act { width: 38px; height: 38px; min-width: 38px; padding: 0; display: inline-flex; align-items: center; justify-content: center; }
  .uxc-act-ico { display: inline-flex; }
  .uxc-act-text { display: none; }
  .uxc-act { width: 38px; height: 38px; min-width: 38px; padding: 0; display: inline-flex; align-items: center; justify-content: center; }
  /* Very wide screens: restore the short text label next to the icon. The 1760px breakpoint
     leaves the actions cell room for the widest rows (staff's 5 actions, POS terminal row). */
  @media (min-width: 1760px) {
    .uxc-act, .uxc-pos-act { width: auto; min-width: 38px; padding: 0 12px; gap: 6px; }
    .uxc-act-text, .uxc-pos-act-text { display: inline; white-space: nowrap; }
  }
  .uxc-table-checkbox-col { width: 34px; }
  .uxc-staff-email { font-size: 12px; color: var(--uxc-text-muted, #999); overflow-wrap: anywhere; }
  .uxc-staff-suspended { color: #d33; font-weight: 600; }
  .uxc-staff-matrix-head { cursor: pointer; user-select: none; display: flex; align-items: center; justify-content: space-between; }
  .uxc-staff-matrix-toggle { margin-left: 8px; color: var(--uxc-text-muted, #5c7171); font-size: 24px; line-height: 1; transition: transform 0.2s; }
  .uxc-staff-matrix.uxc-staff-matrix-collapsed .uxc-staff-matrix-body { display: none; }
  .uxc-staff-matrix.uxc-staff-matrix-collapsed .uxc-staff-matrix-head { margin-bottom: 0; padding-bottom: 0; border-bottom: none; }
  .uxc-staff-matrix.uxc-staff-matrix-collapsed .uxc-staff-matrix-toggle { transform: rotate(-90deg); }
  .uxc-stat-tile-foot { margin-top: 8px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
  .uxc-bal-updated { font-size: 11px; color: var(--uxc-text-muted, #999); }
  .uxc-balance-meta { margin: 4px 0; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }

/* Mobile: keep the transactions table as a proper table (not card-style); horizontal scroll if needed. */
@media (max-width: 768px) {
  /* Scroll the wrapper, keep the table a real width:100% table so it fills the box
     (display:block + width:max-content collapses the inner table to its content and leaves a gap). */
  .uxc-table-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; width: 100%; }
/* Checkouts File panel: Download + Upload as side-by-side cards (stacked on mobile). */
.uxc-checkouts-file-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 16px 0; }
.uxc-checkouts-file-cards .uxc-card-title { margin-bottom: 8px; }
.uxc-checkouts-file-cards pre { white-space: pre-wrap; word-break: break-all; font-size: 11px; background: transparent; padding: 8px; margin: 8px 0; }
@media (max-width: 768px) { .uxc-checkouts-file-cards { grid-template-columns: 1fr; } }
/* Download/Upload sub-cards: flat, square, no background (match the pushdown card treatment). */
.uxc-checkouts-file-cards .uxc-card { background: transparent; border-radius: 0; box-shadow: none; margin-bottom: 12px; }
.uxc-checkouts-file-cards .uxc-card:hover { border-color: var(--uxc-border-color); box-shadow: none; }

  /* Transactions card-stack on mobile (same pattern as checkouts + the account tables). */
  #uxc-table-transactions { display: block; width: 100%; }
  #uxc-table-transactions thead { display: none; }
  #uxc-table-transactions tbody { display: block; }
  #uxc-table-transactions tr { display: flex; flex-wrap: wrap; border: 1px solid var(--uxc-border-color, #e6e6e6); border-radius: 0; margin-bottom: 16px; padding: 12px; }
  #uxc-table-transactions td { display: flex; justify-content: space-between; align-items: center; width: 100%; border: none; padding: 4px 0; white-space: normal; text-align: right; }
  #uxc-table-transactions td::before { content: attr(data-label); font-weight: 600; color: var(--uxc-text-muted, #999); margin-right: 12px; text-align: left; }
  #uxc-table-transactions tr:hover td { background-color: transparent; }
  .uxc-transactions-info { display: block !important; }
  /* ...but the create editors hide it (inline style on checkouts, state css on payment request),
     which the rule above would defeat; the editors' state classes on .uxc-main outrank it. */
  .uxc-main.uxc-area-create-checkout .uxc-transactions-info,
  .uxc-main.uxc-area-payment-request .uxc-transactions-info { display: none !important; }
  #uxc-table-audit { display: block; width: 100%; }
  #uxc-table-audit thead { display: none; }
  #uxc-table-audit tbody { display: block; }
  #uxc-table-audit tr {
    display: flex; flex-wrap: wrap;
    border: 1px solid var(--uxc-border-color, #e6e6e6); border-radius: 0;
    margin-bottom: 12px; padding: 12px; }
  #uxc-table-audit td {
    display: flex; justify-content: space-between; align-items: center;
    width: 100%; border: none; padding: 4px 0; white-space: normal; text-align: right; }
  #uxc-table-audit td::before {
    content: attr(data-label); font-weight: 600; color: var(--uxc-text-muted, #999);
    margin-right: 12px; text-align: left; }
  #uxc-table-audit tr:hover td { background-color: transparent; }
  /* Audit detail: clamp long diffs to ~3 lines; click to expand (JS marks .uxc-clampable). */
  #uxc-table-audit .uxc-cell-wrap.uxc-clampable { max-height: 4.8em; overflow: hidden; position: relative; cursor: pointer; }
  #uxc-table-audit .uxc-cell-wrap.uxc-clampable::after { content: 'Show more'; position: absolute; right: 0; bottom: 0; padding: 0 0 0 10px; color: var(--uxc-accent); font-weight: 600; background: linear-gradient(to right, transparent, var(--uxc-bg-primary, #fff) 55%); }
  #uxc-table-audit .uxc-cell-wrap.uxc-clampable.uxc-expanded { max-height: none; }
  #uxc-table-audit .uxc-cell-wrap.uxc-clampable.uxc-expanded::after { content: 'Show less'; position: static; display: inline-block; margin-top: 4px; padding: 0; background: none; }
  #uxc-table-staff { display: block; width: 100%; }
  #uxc-table-staff thead { display: none; }
  #uxc-table-staff tbody { display: block; }
  #uxc-table-staff tr {
    display: flex; flex-wrap: wrap;
    border: 1px solid var(--uxc-border-color, #e6e6e6); border-radius: 0;
    margin-bottom: 12px; padding: 12px; }
  #uxc-table-staff td {
    display: flex; justify-content: space-between; align-items: center;
    width: 100%; border: none; padding: 4px 0; white-space: normal; text-align: right; }
  #uxc-table-staff td::before {
    content: attr(data-label); font-weight: 600; color: var(--uxc-text-muted, #999);
    margin-right: 12px; text-align: left; }
  #uxc-table-staff tr:hover td { background-color: transparent; }
  /* Archived staff: card-stack (reuses this data-label pattern). */
  #uxc-table-staff-archived { display: block; width: 100%; }
  #uxc-table-staff-archived thead { display: none; }
  #uxc-table-staff-archived tbody { display: block; }
  #uxc-table-staff-archived tr { display: flex; flex-wrap: wrap; border: 1px solid var(--uxc-border-color, #e6e6e6); border-radius: 0; margin-bottom: 12px; padding: 12px; }
  #uxc-table-staff-archived td { display: flex; justify-content: space-between; align-items: center; width: 100%; border: none; padding: 4px 0; white-space: normal; text-align: right; }
  #uxc-table-staff-archived td::before { content: attr(data-label); font-weight: 600; color: var(--uxc-text-muted, #999); margin-right: 12px; text-align: left; }
  #uxc-table-staff-archived tr:hover td { background-color: transparent; }
  /* Staff action buttons: "Actions" label on its own line, icon-only buttons below. */
  #uxc-table-staff .uxc-table-actions, #uxc-table-staff-archived .uxc-table-actions { justify-content: flex-start; flex-wrap: wrap; gap: 6px; }
  #uxc-table-staff .uxc-table-actions::before, #uxc-table-staff-archived .uxc-table-actions::before { width: 100%; margin-bottom: 4px; }
  .uxc-act-ico { display: inline-flex; }
  .uxc-act-text { display: none; }
  .uxc-act { width: 38px; height: 38px; min-width: 38px; padding: 0; display: inline-flex; align-items: center; justify-content: center; }

  /* POS registers + terminals tables: card-stack (reuses this data-label pattern) + icon-only action buttons. */
  #uxc-table-pos-registers, #uxc-table-pos-terminals { display: block; width: 100%; }
  #uxc-table-pos-registers thead, #uxc-table-pos-terminals thead { display: none; }
  #uxc-table-pos-registers tbody, #uxc-table-pos-terminals tbody { display: block; }
  #uxc-table-pos-registers tr, #uxc-table-pos-terminals tr { display: flex; flex-wrap: wrap; border: 1px solid var(--uxc-border-color, #e6e6e6); border-radius: 0; margin-bottom: 12px; padding: 12px; }
  #uxc-table-pos-registers td, #uxc-table-pos-terminals td { display: flex; justify-content: space-between; align-items: center; width: 100%; border: none; padding: 4px 0; white-space: normal; text-align: right; }
  #uxc-table-pos-registers td::before, #uxc-table-pos-terminals td::before { content: attr(data-label); font-weight: 600; color: var(--uxc-text-muted, #999); margin-right: 12px; text-align: left; }
  #uxc-table-pos-registers tr:hover td, #uxc-table-pos-terminals tr:hover td { background-color: transparent; }
  #uxc-table-pos-registers .uxc-pos-token, #uxc-table-pos-terminals .uxc-pos-token { word-break: break-all; overflow-wrap: anywhere; min-width: 0; max-width: 60%; text-align: right; }
  #uxc-table-pos-registers .uxc-table-actions, #uxc-table-pos-terminals .uxc-table-actions { justify-content: flex-end; flex-wrap: wrap; gap: 6px; }
  #uxc-table-pos-registers .uxc-pos-act-ico, #uxc-table-pos-terminals .uxc-pos-act-ico { display: inline-flex; }
  #uxc-table-pos-registers .uxc-pos-act-text, #uxc-table-pos-terminals .uxc-pos-act-text { display: none; }
  #uxc-table-pos-registers .uxc-pos-act, #uxc-table-pos-terminals .uxc-pos-act { width: 38px; height: 38px; min-width: 38px; padding: 0; display: inline-flex; align-items: center; justify-content: center; }
  #uxc-pos-new-name, #uxc-pos-add { width: 100%; }
  /* GENERIC card-stack (the standard mobile table style): any .uxc-table whose cells carry
   data-label flattens to bordered cards on phones - the checkouts/payments/transactions
   pattern. The id-specific blocks above stay (they carry per-table extras); this catches
   every table that was never given one (e.g. the POS staff list). */
  @media (max-width: 768px) {
    .uxc-table:has(tbody td[data-label]) { display: block; width: 100%; }
    .uxc-table:has(tbody td[data-label]) thead { display: none; }
    .uxc-table:has(tbody td[data-label]) tbody { display: block; }
    .uxc-table:has(tbody td[data-label]) tr { display: flex; flex-wrap: wrap; border: 1px solid var(--uxc-border-color, #e6e6e6); border-radius: 0; margin-bottom: 12px; padding: 12px; }
    .uxc-table:has(tbody td[data-label]) td { display: flex; justify-content: space-between; align-items: center; width: 100%; border: none; padding: 4px 0; white-space: normal; text-align: right; }
    .uxc-table:has(tbody td[data-label]) td::before { content: attr(data-label); font-weight: 600; color: var(--uxc-text-muted, #999); margin-right: 12px; text-align: left; }
    .uxc-table:has(tbody td[data-label]) tr:hover td { background-color: transparent; }
  }
  /* Checkouts (payment links): card-stack on mobile (thead hidden; row td's carry data-label). */
  #uxc-table-checkouts { display: block; width: 100%; }
  #uxc-table-checkouts thead { display: none; }
  #uxc-table-checkouts tbody { display: block; }
  #uxc-table-checkouts tr { display: flex; flex-wrap: wrap; border: 1px solid var(--uxc-border-color, #e6e6e6); border-radius: 0; margin-bottom: 12px; padding: 12px; }
  #uxc-table-checkouts td { display: flex; justify-content: space-between; align-items: center; width: 100%; border: none; padding: 4px 0; white-space: normal; text-align: right; }
  #uxc-table-checkouts td::before { content: attr(data-label); font-weight: 600; color: var(--uxc-text-muted, #999); margin-right: 12px; text-align: left; }
  #uxc-table-checkouts tr:hover td { background-color: transparent; }
  /* Hide the bulk-select checkbox row in the mobile card view (unnecessary on phones). */
  #uxc-table-checkouts td[data-label="Select"] { display: none; }
  /* Landers (lander builder): card-stack on mobile; the Edit button reuses the generic .uxc-act icon-only rules. */
  #uxc-table-landers { display: block; width: 100%; }
  #uxc-table-landers thead { display: none; }
  #uxc-table-landers tbody { display: block; }
  #uxc-table-landers tr { display: flex; flex-wrap: wrap; border: 1px solid var(--uxc-border-color, #e6e6e6); border-radius: 0; margin-bottom: 12px; padding: 12px; }
  #uxc-table-landers td { display: flex; justify-content: space-between; align-items: center; width: 100%; border: none; padding: 4px 0; white-space: normal; text-align: right; }
  #uxc-table-landers td::before { content: attr(data-label); font-weight: 600; color: var(--uxc-text-muted, #999); margin-right: 12px; text-align: left; }
  #uxc-table-landers tr:hover td { background-color: transparent; }
  /* Landers empty state (colspan cell): centered full-width block, no row label. */
  #uxc-table-landers td[colspan] { display: block; flex: 1 0 100%; width: 100%; text-align: center; padding: 18px 0; }
  #uxc-table-landers td[colspan]::before { content: none; }
  /* Bulk-select row is noise in the card view (matches checkouts). */
  #uxc-table-landers td[data-label="Select"] { display: none; }
  /* Account tables (Payments, Ledger, UCASH History, Balance Activity): card-stack on mobile (same pattern). */
  #uxc-table-subscriptions, #uxc-table-onetime, #uxc-table-subscription-history, #uxc-table-payments, #uxc-table-ledger, #uxc-table-ucash-history, #uxc-table-balance-activity { display: block; width: 100%; }
  #uxc-table-subscriptions thead, #uxc-table-onetime thead, #uxc-table-subscription-history thead, #uxc-table-payments thead, #uxc-table-ledger thead, #uxc-table-ucash-history thead, #uxc-table-balance-activity thead { display: none; }
  #uxc-table-subscriptions tbody, #uxc-table-onetime tbody, #uxc-table-subscription-history tbody, #uxc-table-payments tbody, #uxc-table-ledger tbody, #uxc-table-ucash-history tbody, #uxc-table-balance-activity tbody { display: block; }
  #uxc-table-subscriptions tr, #uxc-table-onetime tr, #uxc-table-subscription-history tr, #uxc-table-payments tr, #uxc-table-ledger tr, #uxc-table-ucash-history tr, #uxc-table-balance-activity tr { display: flex; flex-wrap: wrap; border: 1px solid var(--uxc-border-color, #e6e6e6); border-radius: 0; margin-bottom: 12px; padding: 12px; }
  #uxc-table-subscriptions td, #uxc-table-onetime td, #uxc-table-subscription-history td, #uxc-table-payments td, #uxc-table-ledger td, #uxc-table-ucash-history td, #uxc-table-balance-activity td { display: flex; justify-content: space-between; align-items: center; width: 100%; border: none !important; padding: 4px 0; white-space: normal; text-align: right; }
  #uxc-table-subscriptions td::before, #uxc-table-onetime td::before, #uxc-table-subscription-history td::before, #uxc-table-payments td::before, #uxc-table-ledger td::before, #uxc-table-ucash-history td::before, #uxc-table-balance-activity td::before { content: attr(data-label); font-weight: 600; color: var(--uxc-text-muted, #999); margin-right: 12px; text-align: left; }
  #uxc-table-subscriptions tr:hover td, #uxc-table-onetime tr:hover td, #uxc-table-subscription-history tr:hover td, #uxc-table-payments tr:hover td, #uxc-table-ledger tr:hover td, #uxc-table-ucash-history tr:hover td, #uxc-table-balance-activity tr:hover td { background-color: transparent; }
  /* Balances (wallet addresses): card-stack on mobile; per-address sub-rows nest under their crypto. */
  #uxc-table-balances { display: block; width: 100%; }
  #uxc-table-balances thead { display: none; }
  #uxc-table-balances tbody { display: block; }
  #uxc-table-balances tr { display: flex; flex-wrap: wrap; border: 1px solid var(--uxc-border-color, #e6e6e6); border-radius: 0; margin-bottom: 12px; padding: 12px; }
  #uxc-table-balances td { display: flex; justify-content: space-between; align-items: center; width: 100%; border: none; padding: 4px 0; white-space: normal; text-align: right; }
  #uxc-table-balances td::before { content: attr(data-label); font-weight: 600; color: var(--uxc-text-muted, #999); margin-right: 12px; text-align: left; }
  #uxc-table-balances tr:hover td { background-color: transparent; }
  /* Parent + its address sub-rows form ONE card: parent opens it (no bottom border/margin),
     sub-rows are full-width inner rows (no indent, no card of their own, a top divider between
     them, content spans the full card width), and the last sub-row closes the card.
     Single-address rows keep the default standalone-card treatment. */
  #uxc-table-balances tr.uxc-balance-parent { border-bottom: 1px solid var(--uxc-border-color, #e6e6e6); margin-bottom: 0; }   /* own box now: the grey bands below are standalone (operator 8/23) */
  #uxc-table-balances tr.uxc-balance-sub { margin: 0; background: rgba(127, 127, 127, .04); border: 0; }
  #uxc-table-balances tr.uxc-balance-sub td::before { font-weight: 400; }
  /* a parent group's LAST band closes the group with the same bottom margin. */
  #uxc-table-balances tr.uxc-balance-sub:not(:has(~ tr.uxc-balance-sub)) { margin-bottom: 8px; }
}

.uxc-search {
  position: relative; }
  .uxc-search input {
    padding-right: 60px; }
    .uxc-search input:focus + input + i {
      color: var(--uxc-accent); }
  .uxc-search i {
    position: absolute;
    right: 15px;
    font-size: 18px;
    line-height: 0;
    top: 50%;
    margin-top: -10px;
    width: 20px;
    height: 20px;
    color: #5c7171;
    transition: all 0.4s; }
    .uxc-search i.sb-loading {
      margin-top: 0; }

.uxc-mobile-menu > i, .uxc-mobile-menu > svg {
  display: none; }

.uxc-repater-line, .uxc-upload-image {
  position: relative; }
  .uxc-repater-line > i, .uxc-upload-image > i {
    position: absolute;
    right: 0;
    top: 38px;
    font-size: 10px;
    color: #5c7171;
    width: 25px;
    height: 25px;
    line-height: 25px;
    text-align: right;
    cursor: pointer;
    transition: all 0.4s; }
    .uxc-repater-line > i:hover, .uxc-upload-image > i:hover {
      color: #ca3434; }

.uxc-repater-line hr {
  height: 1px;
  margin: 15px 0 30px 0;
  background: #888888; }

.uxc-upload-image .uxc-btn-icon {
  margin: 0;
  width: 100%;
  height: 150px;
  line-height: 160px;
  background-size: cover;
  background-position: center center; }
  .uxc-upload-image .uxc-btn-icon i {
    color: #7f9494; }
    .uxc-upload-image .uxc-btn-icon i:before {
      font-size: 18px;
      line-height: 160px; }
  .uxc-upload-image .uxc-btn-icon[style] i {
    display: none; }
  .uxc-upload-image .uxc-btn-icon[style] + i {
    display: block; }
.uxc-upload-image input {
  display: none !important; }
.uxc-upload-image > i {
  top: calc(50% - 12.5px);
  right: -20px;
  display: none; }

/* 

ADMIN AREA
==========================================================

*/
.uxc-nav-filters {
  padding: 20px;
  display: none;
  width: 100%;
  flex: 0 0 100%;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
  order: 10; }
  .uxc-nav-filters .uxc-input {
    margin-right: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px; }
  .uxc-nav-filters.uxc-active {
    display: flex;
    margin-top: 20px;
    animation: uxc-fade-in .5s; }
  .uxc-nav-filters > .uxc-select {
    display: inline-block;
    margin: 0; }
  .uxc-nav-filters .uxc-filter-checkout > p {
    max-width: 100%; }
  /* Card title (mobile-only; markup lives in uxc_admin_filters()). */
  .uxc-nav-filters-title {
    display: none; }

/* Download-CSV filter panel (mirrors .uxc-nav-filters; toggled by #uxc-download-transitions). */
.uxc-download-filters {
  padding: 20px;
  display: none;
  width: 100%;
  flex: 0 0 100%;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 16px;
  order: 11; }
  .uxc-download-filters.uxc-active {
    display: flex;
    margin-top: 20px;
    animation: uxc-fade-in .5s; }
.uxc-download-presets {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px; }
.uxc-download-label {
  font-weight: 600;
  font-size: 15px;
  color: #464646;
  margin-right: 4px; }
.uxc-download-preset {
  background: transparent;
  border: 1px solid var(--uxc-border-color);
  color: #464646;
  padding: 8px 14px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  border-radius: 0;
  transition: all 0.2s; }
  .uxc-download-preset:hover {
    border-color: var(--uxc-accent);
    color: var(--uxc-accent); }
  .uxc-download-preset.uxc-active {
    background: var(--uxc-accent);
    border-color: var(--uxc-accent);
    color: #fff; }
    /* Dark theme: active chip text goes dark on the gold bg, matching the filter-card chips. */
    .uxc-dark-mode .uxc-download-preset.uxc-active, .uxc-dark-mode .uxc-download-preset.uxc-active:hover {
      color: #1a1a1a; }
.uxc-download-filters .uxc-btn {
  background: var(--uxc-accent);
  color: #fff;
  border: none;
  padding: 0 24px;
  font-weight: 600; }

/* Support contact form */
.uxc-support-form { max-width: 640px; display: flex; flex-direction: column; gap: 16px; }
.uxc-support-form .uxc-input { flex-direction: column; align-items: stretch; }
.uxc-support-form .uxc-input span { margin-bottom: 6px; flex-grow: 0; }
.uxc-support-form .uxc-input input, .uxc-support-form .uxc-input textarea, .uxc-support-form .uxc-input select { width: 100%; }
.uxc-support-message-wrap textarea { height: auto !important; min-height: 160px; resize: vertical; line-height: 22px; }
.uxc-support-status { min-height: 20px; font-size: 14px; margin: 0; }
.uxc-support-status.uxc-error { color: #ca3434; }
.uxc-support-status.uxc-success { color: var(--uxc-accent); font-weight: 600; }

/* Support: two-column layout — form on the left, contact sidebar on the right at >=769px, stacked below. */
.uxc-support-layout { display: flex; flex-direction: column; gap: 24px; }
@media (min-width: 769px) {
  .uxc-support-layout { flex-direction: row; align-items: flex-start; }
  .uxc-support-form { flex: 1 1 480px; max-width: none; }
}
.uxc-support-aside { border: 1px solid var(--uxc-border-color, #ddd); padding: 20px; background: transparent; }
.uxc-support-aside-title { font-size: 15px; font-weight: 600; color: #464646; margin: 0 0 14px 0; }
.uxc-support-aside-row { display: flex; align-items: baseline; gap: 8px; margin: 0 0 8px 0; font-size: 14px; }
.uxc-support-aside-label { font-weight: 600; color: #464646; }
.uxc-support-aside-row a { color: var(--uxc-accent); text-decoration: none; }
.uxc-support-aside-row a:hover { text-decoration: underline; }
.uxc-support-aside-note { font-size: 13px; line-height: 20px; color: #5c7171; margin: 0 0 10px 0; }
.uxc-support-learn-title { margin-top: 8px; }
.uxc-support-learn { list-style: none; margin: 8px 0 0 0; padding: 0; }
.uxc-support-learn li { margin: 0 0 6px 0; }
.uxc-support-learn a { color: var(--uxc-accent); font-size: 14px; text-decoration: none; cursor: pointer; }
.uxc-support-learn a:hover { text-decoration: underline; }

input.uxc-filter-date, input.uxc-filter-date-2 {
  min-width: 0;
  width: 100px;
  text-align: center; }

input.uxc-filter-date-2 {
  margin-left: 10px !important; }

.uxc-filter-checkout > p {
  max-width: 100px; }

.uxc-admin {
  color: #000; }
  .uxc-admin main {
    padding: 0;
    position: relative; }
    .uxc-admin main > div {
      min-height: 50px; }
      .uxc-admin main > div.uxc-active {
        animation: uxc-fade-in .5s; }
      .uxc-admin main > div:not(.uxc-active) {
        display: none; }
      .uxc-admin main > div.uxc-loading:before {
        content: "";
        width: 48px; height: 48px; margin-top: -24px; margin-left: -24px;
        top: calc(50% - 10px); left: 50%;
        border: none;
        background: var(--uxc-loading-icon) center center / contain no-repeat;
        animation: uxc-spin 1.1s linear infinite; }
      .uxc-dark-mode .uxc-admin main > div.uxc-loading:before {
        background-image: var(--uxc-loading-icon-dark); }
      .uxc-admin main > div.uxc-loading:after {
        top: calc(50% - 10px); }
  .uxc-admin .uxc-input span {
    flex-shrink: 0; }
  .uxc-admin .uxc-input .uxc-setting-input {
    width: 100%;
    padding-right: 0; }
  .uxc-admin .uxc-input .uxc-setting-content {
    max-width: 420px; }
  .uxc-admin .uxc-setting-content { box-sizing: border-box; }
  .uxc-admin .uxc-input .uxc-icon-help {
    transform: translateY(1px);
    margin: 0 0 0 5px;
    font-size: 12px;
    color: #b1c2d1;
    text-decoration: none;
    display: inline-block; }
    .uxc-admin .uxc-input .uxc-icon-help:hover {
      color: var(--uxc-accent); }

/* Inline Read More / See Less links */
.uxc-setting-description {
  font-size: 13px;
  line-height: 22px;
  letter-spacing: 0.3px;
  margin: 0 0 5px 0;
  color: #5c7171;
  font-weight: 400;
}

.uxc-help-short,
.uxc-help-full {
  font-size: 13px;
  line-height: 22px;
  letter-spacing: 0.3px;
  color: #5c7171;
  font-weight: 400;
}

.uxc-help-full {
  display: none;
}

/* Help content wiki/documentation style */
.uxc-help-content {
  display: block;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--uxc-border-color);
  font-family: monospace, Consolas, Monaco, "Courier New";
  font-size: 12px;
  line-height: 1.4;
  color: #555;
}

.uxc-help-content h4 {
  margin: 12px 0 8px 0;
  font-size: 12px;
  font-weight: 600;
  color: #333;
}

.uxc-help-content p {
  margin: 0 0 8px 0;
  font-size: 10px;
}

.uxc-help-content ul {
  margin: 8px 0 12px 0;
  padding-left: 18px;
}

.uxc-read-more,
.uxc-see-less {
  font-weight: 600;
  color: var(--uxc-accent);
  text-decoration: none;
  cursor: pointer;
  transition: color 0.3s;
  margin: 0 0 0 5px;
  font-family: "Uncheckout", "Helvetica Neue", "Apple Color Emoji", Helvetica, Arial, sans-serif;
}

.uxc-read-more:hover,
.uxc-see-less:hover {
  color: #8a6622;
  text-decoration: underline; }

/* Dark mode support */
.uxc-dark-mode .uxc-setting-description,
.uxc-dark-mode .uxc-help-short,
.uxc-dark-mode .uxc-help-full {
  color: var(--uxc-text-secondary);
}

.uxc-dark-mode .uxc-help-content {
  border-top-color: var(--uxc-border-color);
  color: var(--uxc-text-secondary);
}

.uxc-dark-mode .uxc-help-content h4 {
  color: var(--uxc-text-primary);
}

.uxc-dark-mode .uxc-read-more,
.uxc-dark-mode .uxc-see-less {
  color: var(--uxc-accent); }

.uxc-dark-mode .uxc-read-more:hover,
.uxc-dark-mode .uxc-see-less:hover {
  color: #e6c07a; }

/* Fee information box styling */
.uxc-fees-info-box {
  padding: 25px;
  border: 1px solid var(--uxc-border-color);
  margin-bottom: 15px;
}

.uxc-fees-info-box h4 {
  font-size: 14px;
  font-weight: 600;
  margin: 15px 0 8px 0;
  color: #464646;
}

.uxc-fees-info-box h4:first-child {
  margin-top: 0;
}

.uxc-fees-info-box ul {
  margin: 8px 0;
  padding-left: 20px;
}

.uxc-fees-info-box li {
  margin: 5px 0;
  font-size: 14px;
  color: #5c7171;
}

/* Dark mode support */
.uxc-dark-mode .uxc-fees-info-box {
  border-color: var(--uxc-border-color);
}

.uxc-dark-mode .uxc-fees-info-box h4 {
  color: var(--uxc-text-primary);
}

.uxc-dark-mode .uxc-fees-info-box li {
  color: var(--uxc-text-secondary);
}
  .uxc-admin.uxc-agent #uxc-create-checkout, .uxc-admin.uxc-agent #uxc-save-checkout, .uxc-admin.uxc-agent #uxc-delete-checkout {
    display: none !important; }

/* Stack multi-input sections vertically for better space allocation */
.uxc-admin .uxc-input[data-type="multi-input"] {
  flex-direction: column; }

.uxc-admin .uxc-input[data-type="multi-input"] .uxc-setting-content {
  width: 100%;
  max-width: 100%;
  padding-right: 0;
  margin-bottom: 20px; }

/* Wrapped checkbox rows (setting-content label + setting-input holding a lone checkbox):
     label left, checkbox right. Placed AFTER the label-above rules above so it wins even for
     rows built without data-type=checkbox (POS gates, credit toggles, anything future). */
  .uxc-admin .uxc-input:has(> .uxc-setting-content + .uxc-setting-input > input[type="checkbox"]:only-child),
  .uxc-admin .uxc-input[data-type="checkbox"]:has(> .uxc-setting-content) {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    flex-wrap: nowrap; }

.uxc-admin .uxc-input[data-type="multi-input"] .uxc-setting-input {
  width: 100%;
  max-width: 100%; }

/* Stack settings labels full-width above their controls — matches multi-input above and the
   Account section. :has(> .uxc-setting-content) targets ONLY settings rows (the Checkouts form
   and super-admin config use a bare <span>, not .uxc-setting-content). Checkboxes stay inline. */
.uxc-admin .uxc-input:has(> .uxc-setting-content):not([data-type="checkbox"]):not([data-type="multi-input"]) {
  flex-direction: column;
  align-items: stretch;
  margin-bottom: 15px; }
.uxc-admin .uxc-input:has(> .uxc-setting-content):not([data-type="checkbox"]):not([data-type="multi-input"]) .uxc-setting-content {
  width: 100%;
  max-width: 100%;
  padding-right: 0;
  margin-bottom: 5px; }
/* Grey out a token row's fields when no network is selected (Disabled) */
.uxc-token-row-disabled {
  opacity: 0.4;
  pointer-events: none; }

.uxc-settings-title {
  text-align: left !important;
  border: 1px solid var(--uxc-accent) !important;
  background-color: rgba(var(--uxc-accent-rgb), 0.25) !important;
  border-radius: 0;
  padding: 14px 20px !important;
  margin-top: 50px !important; }
  .uxc-settings-title span {
    font-size: 18px !important;
    color: var(--uxc-accent) !important;
    width: auto !important; }
  .uxc-settings-title .uxc-read-more {
    display: block;
    margin: 0; }

.uxc-dark-mode .uxc-settings-title {
  border-color: var(--uxc-accent) !important;
  background-color: rgba(var(--uxc-accent-rgb), 0.1) !important; }
  .uxc-dark-mode .uxc-settings-title span {
    color: var(--uxc-accent) !important; }

/* Settings section nav */
/* Section title bars are retired: every subpaged area carries a centered pill bar and the
   content cards carry their own titles. The bars stay in the DOM (anchors for the subpage
   tagger + the hosted descriptions the settings intro moves into the card) - hidden only. */
.uxc-settings-title { display: none !important; }

.uxc-settings-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding: 15px 0;
    justify-content: center;
}
.uxc-settings-nav-btn {
    font-size: 13px;
    font-weight: 500;
    padding: 6px 14px;
    border: 1px solid var(--uxc-accent);
    border-radius: 0;
    background-color: transparent;
    color: var(--uxc-accent);
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
}
.uxc-settings-nav-btn:hover {
    color: #000;
    border-color: var(--uxc-border-color);
    background-color: rgba(var(--uxc-accent-rgb), 0.08);
}
.uxc-dark-mode .uxc-settings-nav-btn {
    color: var(--uxc-accent);
    border-color: var(--uxc-accent);
}
.uxc-dark-mode .uxc-settings-nav-btn:hover {
    color: #fff;
    border-color: var(--uxc-border-color);
}
.uxc-dark-mode .uxc-settings-nav {
    border-bottom-color: var(--uxc-border-color);
}

/* Settings section subpages (/settings/<slug>): pills are <button> now, and carry an active state. */
.uxc-settings-nav-btn { font-family: inherit; line-height: 1.2; }
.uxc-settings-nav-btn.uxc-active { background-color: var(--uxc-accent); border-color: var(--uxc-accent); color: #fff; }
.uxc-dark-mode .uxc-settings-nav-btn.uxc-active { color: #0d0d0d; }

/* Hidden sections keep their DOM position: the save sweep and the sibling (+) CSS selectors read
   the flat run, display:none elements still participate in them. */
.uxc-settings-subhidden { display: none !important; }
/* Section-title cards no longer render on subpages: the top explainer card (hosting the section's
   own description + Read More) replaces them. They still structure /settings/all and anchor the
   runtime section grouping (their ids must stay in the DOM). */
[data-area="settings"].uxc-settings-mode-section .uxc-settings-title { display: none !important; }
.uxc-transactions-info .uxc-setting-description { margin-top: 4px; }
/* Save button rests disabled until something in the settings area changes. */
.uxc-save-disabled { opacity: 0.45 !important; pointer-events: none !important; cursor: default !important; }
/* ===== Wallet chips (Addresses): managed per-wallet list ===== */
.uxc-transactions-info-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.uxc-transactions-info-head .uxc-transactions-info-title { margin-bottom: 0; }
.uxc-wallets-open-btn { font: inherit; font-size: 12px; padding: 6px 12px; border: 1px solid var(--uxc-accent); background: transparent; color: var(--uxc-accent); cursor: pointer; white-space: nowrap; }
.uxc-app-wallets-remove-wrap { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; margin: 0 0 10px 0; padding: 12px 14px; border: 1px solid rgba(163,122,41,.35); background: rgba(163,122,41,.07); border-radius: 10px; }
.uxc-app-wallets-remove-wrap[hidden] { display: none; }
.uxc-app-wallets-warn { flex: 1; min-width: 220px; font-size: 13px; line-height: 1.5; color: var(--uxc-text-secondary); }
.uxc-app-wallets-remove { border: 1px solid #b34141; background: transparent; color: #b34141; border-radius: 8px; padding: 9px 14px; cursor: pointer; font-weight: 600; white-space: nowrap; font: inherit; font-size: 13px; }
.uxc-app-wallets-remove:disabled { opacity: .55; cursor: default; }
.uxc-uapp-xpub-wrap { margin: 0 0 10px 0; padding: 12px 14px; border: 1px solid rgba(163,122,41,.35); background: rgba(163,122,41,.05); border-radius: 10px; }
.uxc-uapp-xpub-head { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.uxc-uapp-xpub-title { flex: 1; min-width: 200px; font-size: 13px; font-weight: 600; color: var(--uxc-text-primary); }
.uxc-uapp-xpub-desc { font-size: 12.5px; line-height: 1.5; color: var(--uxc-text-secondary); margin: 8px 0 10px 0; }
.uxc-uapp-xpub-rows { display: flex; flex-direction: column; gap: 6px; }
.uxc-uapp-xpub-row { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; padding: 8px 10px; border: 1px solid var(--uxc-border-color); border-radius: 8px; background: var(--uxc-card-bg); }
.uxc-uapp-xpub-sym { font-weight: 700; font-size: 12px; color: var(--uxc-accent); min-width: 36px; }
.uxc-uapp-xpub-key { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 12px; color: var(--uxc-text-secondary); word-break: break-all; }
.uxc-uapp-xpub-next, .uxc-uapp-xpub-count { font-size: 12px; color: var(--uxc-text-muted); white-space: nowrap; }
.uxc-uapp-xpub-rm, .uxc-uapp-xpub-remove-all { border: 1px solid #b34141; background: transparent; color: #b34141; border-radius: 8px; padding: 7px 12px; cursor: pointer; font-weight: 600; white-space: nowrap; font: inherit; font-size: 12px; }
.uxc-uapp-xpub-rm:disabled, .uxc-uapp-xpub-remove-all:disabled { opacity: .55; cursor: default; }
.uxc-uapp-xpub-rm:hover:not(:disabled), .uxc-uapp-xpub-remove-all:hover:not(:disabled) { background: rgba(179,65,65,.08); }
.uxc-wallets-open-btn:hover, .uxc-wallets-open-btn.uxc-open { background: var(--uxc-accent); color: #fff; }
.uxc-dark-mode .uxc-wallets-open-btn:hover, .uxc-dark-mode .uxc-wallets-open-btn.uxc-open { color: #0d0d0d; }
.uxc-addr-input-row { flex-wrap: wrap; }
.uxc-addr-input-row > input.uxc-addr-add-in { flex: 67 1 160px; }   /* ~2/3 of the shared row space (beats the base >input flex:1) */
.uxc-addr-input-row > input.uxc-addr-add-label { flex: 33 1 90px; font-size: 12px; padding: 6px 8px; }   /* ~1/3 */
.uxc-addr-add-btn { font: inherit; font-size: 12px; padding: 7px 14px; border: 1px solid var(--uxc-accent); background: transparent; color: var(--uxc-accent); cursor: pointer; align-self: stretch; display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.uxc-addr-add-btn:hover { background: var(--uxc-accent); color: #fff; }
.uxc-dark-mode .uxc-addr-add-btn:hover { color: #0d0d0d; }
.uxc-addr-chips { display: none; flex-wrap: wrap; gap: 8px; margin: 10px 0 2px; }
.uxc-wallet-chip { display: inline-flex; align-items: center; gap: 6px; border: 1px solid var(--uxc-border-color, #e6e6e6); background: transparent; padding: 4px 6px 4px 12px; font-size: 12px; max-width: 100%; border-radius: 999px; }   /* pill, no fill */
.uxc-wallet-chip .uxc-wallet-chip-label { font-weight: 600; color: var(--uxc-text-primary, #1a1a1a); cursor: pointer; max-width: 170px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }   /* two classes: beats the fleet .uxc-input span rule */
.uxc-wallet-chip .uxc-wallet-chip-label:hover { color: var(--uxc-accent); }
.uxc-wallet-chip .uxc-wallet-chip-unlabeled { font-weight: 400; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; color: var(--uxc-text-secondary, #6b6b6b); }
.uxc-wallet-chip .uxc-wallet-chip-addr { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; color: var(--uxc-text-muted, #999); font-weight: 400; }   /* never bold, labeled or not */
/* A labeled chip renders the label as a badge (App-badge shape). Contrast-inverted per theme
   (operator 8/21): light theme = dark grey fill + white caps; dark theme = light grey fill +
   black caps. Uppercase always, and it sits 7px into the pill's left end like the App badge. */
.uxc-wallet-chip .uxc-wallet-chip-label:not(.uxc-wallet-chip-unlabeled) { background: #3a3a3a; color: #fff; font-size: 10px; font-weight: 700; padding: 1px 7px; border-radius: 999px; max-width: 170px; text-transform: uppercase; margin-left: -7px; }
.uxc-dark-mode .uxc-wallet-chip .uxc-wallet-chip-label:not(.uxc-wallet-chip-unlabeled) { background: #aaaaaa; color: #000; }
.uxc-wallet-chip-dragging { opacity: .7; outline: 1px dashed var(--uxc-accent); }
.uxc-wallet-chip-ghost { position: fixed; z-index: 3000; margin: 0; pointer-events: none; opacity: .96; box-shadow: 0 10px 26px rgba(0, 0, 0, .28); cursor: grabbing; will-change: transform; }   /* the floating chip: tracks the pointer raw (NO transform transition), never hit-tested */
.uxc-wallet-chip-slot { border: 1px dashed var(--uxc-accent); border-radius: 999px; box-sizing: border-box; opacity: .55; }   /* placeholder pill holding the drop slot while the ghost floats */
.uxc-wallet-chip-drag { color: var(--uxc-text-muted, #999); cursor: grab; touch-action: none; user-select: none; -webkit-user-select: none; font-size: 15px; line-height: 1; padding: 2px 4px; }   /* the only drag origin; same color + size as the x (operator 8/22); touch-action none so touch drags don't scroll */
.uxc-wallet-chip-drag:hover { color: var(--uxc-accent); }
.uxc-wallet-chip-drag:active { cursor: grabbing; }
.uxc-wallet-chip-appbadge { background: var(--uxc-accent); color: #fff; font-size: 10px; font-weight: 800; letter-spacing: .04em; padding: 1px 7px; border-radius: 999px; margin-left: -7px; margin-top: 1px; text-transform: uppercase; }   /* white in light theme, APP bold; 7px into the pill's left end, 1px down */
.uxc-dark-mode .uxc-wallet-chip-appbadge { color: #000 !important; }   /* black text on gold in dark theme (light theme stays white) */
.uxc-wallet-app { border-color: var(--uxc-accent); }
.uxc-wallet-chip { cursor: pointer; }
.uxc-wallet-chip-full .uxc-wallet-chip-label { max-width: none; white-space: normal; word-break: break-all; }
.uxc-wallet-chip-full .uxc-wallet-chip-addr { white-space: normal; word-break: break-all; }
.uxc-wallet-chip-x { border: 0; background: none; color: var(--uxc-text-muted, #999); cursor: pointer; font: inherit; font-size: 15px; line-height: 1; padding: 0 4px; position: relative; top: -1px; left: 5px; }   /* nudged up 1 / right 5 (operator 8/22); relative offsets = no layout shift for the grip */
.uxc-wallet-chip-x:hover { color: #c0392b; }
.uxc-wallet-chip .uxc-wallet-chip-x.uxc-wallet-chip-x-armed { color: #c0392b; font-weight: 700; font-size: 11px; }
.uxc-wallet-chip-x[data-confirm="1"] { color: #c0392b; font-weight: 700; }
.uxc-wallets-panel { border: 1px solid var(--uxc-border-color, #e6e6e6); padding: 16px; margin: 0 0 16px; }
.uxc-wallets-coin { margin-bottom: 14px; }
.uxc-wallets-coin:last-child { margin-bottom: 0; }
.uxc-wallets-coin-head { font-size: 13px; font-weight: 600; color: var(--uxc-text-primary, #1a1a1a); margin-bottom: 8px; }
.uxc-wallets-coin-chips { margin: 0; }
.uxc-wallets-empty { font-size: 13px; color: var(--uxc-text-muted, #999); }
.uxc-dark-mode .uxc-wallet-chip-edit { background: var(--uxc-input-bg, #000); }
@media (max-width: 767px) {
  .uxc-addr-add-label { flex: 1 1 100%; order: 5; width: auto; }
}

/* Index view (bare /settings): a card per subpage. */
.uxc-settings-index { display: none; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 12px; padding: 5px 0 15px; }
.uxc-settings-mode-index .uxc-settings-index { display: grid; }
.uxc-settings-index-card { display: flex; flex-direction: column; gap: 6px; border: 1px solid var(--uxc-border-color); padding: 14px 16px; cursor: pointer; background: transparent; }
.uxc-settings-index-card:hover { border-color: var(--uxc-accent); background: rgba(var(--uxc-accent-rgb), 0.06); }
.uxc-settings-index-title { font-size: 14px; font-weight: 600; color: var(--uxc-accent); }
.uxc-settings-index-desc { font-size: 12px; line-height: 1.45; color: var(--uxc-text-muted, #999); }
.uxc-settings-view-all { display: none; font-size: 12px; color: var(--uxc-text-muted, #999); margin: 0 0 20px; }
.uxc-settings-mode-index .uxc-settings-view-all { display: inline-block; }
.uxc-settings-view-all:hover { color: var(--uxc-accent); }

/* POS hub: the tab panel (pills + content) stays hidden until a tab subpage opens it. */
[data-area="point-of-sale"].uxc-settings-mode-index #uxc-pos-panel { display: none; }

/* The long intro block belongs to the all-sections view only. */
[data-area="settings"] .uxc-transactions-info { display: none; }
[data-area="settings"].uxc-settings-mode-all .uxc-transactions-info,
[data-area="settings"].uxc-settings-mode-section .uxc-transactions-info { display: block; }
[data-area="settings"] > hr { display: none; }
.uxc-settings-mode-all > hr { display: block; }

/* Sidebar submenu: settings subpages, open while the settings area is active. align-items stretch
   overrides the .uxc-nav > div base centering (a column wrapper with align-items:center centers
   every item horizontally). */
.uxc-nav > .uxc-settings-subnav { display: none; flex-direction: column; align-items: stretch; gap: 1px; margin: 2px 3px 6px; padding-left: 14px; }
.uxc-nav > .uxc-settings-subnav.uxc-open { display: flex; }
.uxc-nav-subitem { display: flex; align-items: center; justify-content: flex-start; text-align: left; width: 100%; box-sizing: border-box; min-height: 26px; padding: 0 8px; font-size: 11.5px; color: var(--uxc-text-muted, #999); cursor: pointer; border-left: 2px solid transparent; }
.uxc-nav-subitem::before { content: "›"; margin-right: 7px; color: inherit; font-size: 13px; line-height: 1; }
.uxc-nav-subitem:hover::before, .uxc-nav-subitem.uxc-active::before { color: var(--uxc-accent); }
.uxc-nav-subitem:hover { color: var(--uxc-accent); background: rgba(var(--uxc-accent-rgb), 0.05); }
.uxc-nav-subitem.uxc-active { color: var(--uxc-accent); border-left-color: var(--uxc-accent); font-weight: 600; }
@media (min-width: 768px) { /* collapsed is desktop-only; the mobile drawer shows submenus (mobile rules further down win the tie anyway) */
  .uxc-sidebar.uxc-collapsed .uxc-settings-subnav { display: none !important; }
}

/* Shop URL box */
.uxc-shop-url-box {
  margin-top: 12px;
  margin-bottom: 10px;
  padding: 10px 14px;
  border: 1px solid var(--uxc-border-color);
}

.uxc-shop-url-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 6px;
}

.uxc-shop-url-header .uxc-icon-copy {
  font-size: 14px;
  color: #8a9494;
  cursor: pointer;
}

.uxc-shop-url-header .uxc-icon-copy:hover {
  opacity: 0.7;
}

.uxc-shop-url-label {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: #8a9494;
}

.uxc-shop-url-row {
  display: flex;
  align-items: center;
}

.uxc-shop-url-link {
  font-size: 12px;
  color: var(--uxc-accent);
  word-break: break-all;
  text-decoration: none;
  font-family: monospace, Consolas, Monaco, "Courier New";
  line-height: 1.4;
}

.uxc-shop-url-link:hover {
  color: #8a6622;
  text-decoration: underline;
}

.uxc-dark-mode .uxc-shop-url-box {
  border-color: var(--uxc-border-color);
}

.uxc-dark-mode .uxc-shop-url-label {
  color: var(--uxc-text-secondary);
}

.uxc-dark-mode .uxc-shop-url-link {
  color: var(--uxc-accent);
}

.uxc-dark-mode .uxc-shop-url-link:hover {
  color: #e6c07a;
}

#uxc-checkouts-form, #uxc-payment-request-content { margin-top: 20px; }  /* editors sit right under the page header/cards; match the card rhythm */
#uxc-checkouts-form .uxc-input {
  align-items: center;
  margin-top: 15px; }
  #uxc-checkouts-form .uxc-input#uxc-checkout-title {
    margin-top: 4px; }
  #uxc-checkouts-form .uxc-input > span {
    transition: all 0.4s; }
  #uxc-checkouts-form .uxc-input:hover > span {
    transform: translateX(7px); }
#uxc-checkouts-form #uxc-checkout-payment-link a {
  padding: 0; }
  #uxc-checkouts-form #uxc-checkout-payment-link a:hover {
    text-decoration: underline; }
#uxc-checkouts-form .uxc-repater-line hr {
  margin: 4px 0 0 0;
  background: none; }
#uxc-checkouts-form .uxc-repater-line i {
  right: -20px;
  top: 11px; }
#uxc-checkouts-form .uxc-btn-repater {
  margin: 15px 0 0 0;
  font-size: 14px;
  font-weight: 500; }
  #uxc-checkouts-form .uxc-btn-repater:not(:hover) {
    color: #5c7171; }
#uxc-checkouts-form .uxc-flex .uxc-input + .uxc-input {
  margin-top: 15px !important; }

#uxc-checkout-price input {
  min-width: 75px !important; }

#uxc-checkout-currency select {
  max-width: 200px !important; }

/* Upload-widget button: kill the inherited 15px field margin so it sits flush in its row. */
.uxc-upload-btn { margin-bottom: 0 !important; }
[data-type="text"]:has(.uxc-upload-btn) { margin-bottom: 10px; }
/* Price input on its own full-width row (label above input) at desktop, matching the other form fields. */
@media (min-width: 769px) {
  #uxc-checkout-currency-area .uxc-input {
    flex-direction: column;
    align-items: stretch;
    width: 100%; } }

.uxc-info:not(.uxc-page-header) {
  background-color: transparent !important;
  padding: 0 !important; }
.uxc-info .uxc-title {
  color: #464646; }

.uxc-dark-mode .uxc-info .uxc-title {
  color: #ffffff; }

.uxc-input-wrapper {
  position: relative;
  display: flex;
  width: 100%; }
.uxc-generate-btn {
  position: absolute;
  right: 8px;
  top: 40%;
  transform: translateY(-50%);
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px;
  color: #888;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.2s; }
  .uxc-generate-btn:hover {
    color: #D4AF37; }
  .uxc-generate-btn svg {
    width: 20px;
    height: 20px; }
.uxc-input-wrapper > input {
  padding-right: 38px !important; }
.uxc-upload-input {
  flex: 1;
  padding-right: 43px !important;
  min-width: 0; }
.uxc-upload-btn {
  flex-shrink: 0;
  border-radius: 0;
  background: transparent;
  border: 1px solid var(--uxc-accent);
  color: var(--uxc-accent); }
/* Settings upload buttons: icon LEFT + gold "Upload" label RIGHT on desktop; square icon-only (no
   text) on mobile (<=768px). Scoped to .uxc-btn so the Shop upload div (.uxc-btn-icon .uxc-upload-btn)
   is unaffected. */
.uxc-btn.uxc-upload-btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; flex-direction: row; }
.uxc-btn.uxc-upload-btn .uxc-upload-text { color: var(--uxc-accent); }
@media (max-width: 768px) {
  .uxc-btn.uxc-upload-btn { width: 38px; padding: 0; }
  .uxc-upload-text { display: none !important; }
}

#checkout-downloads {
  align-items: flex-start !important; }
  #checkout-downloads .uxc-setting-input {
    text-align: right; }
  #checkout-downloads input:hover {
    cursor: pointer;
    text-decoration: underline; }

[data-area="settings"] .uxc-input + .uxc-input, [data-area="settings"] .uxc-input + .uxc-flex, [data-area="settings"] .uxc-flex + .uxc-input {
  margin-top: 15px;
  padding-top: 15px;
  border-top: 1px solid var(--uxc-border-color); }

.uxc-sidebar {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  width: 160px;
  background: #ffffff;
  border-left: 1px solid var(--uxc-border-color, #e6e6e6);
  border-right: 1px solid var(--uxc-border-color, #e6e6e6);
  z-index: 999995;
  display: flex;
  flex-direction: column;
  overflow: hidden; }
/* Desktop (≥769px): the Logout/Theme footer lives only in the mobile drawer — hide it here (the sidebar already has its own logout/theme). */
@media (min-width: 768px) {
  .uxc-nav-action, .uxc-nav-close { display: none !important; }
}
  .uxc-sidebar > div {
    padding: 0;
    margin: 0; }
  .uxc-sidebar .uxc-logo {
    display: block;
    max-height: 22px;
    margin: 10px 0 10px 10px;
    max-width: calc(100% - 30px); }
  .uxc-sidebar .uxc-logo-icon {
    display: none;
    margin: 0;
    height: 25px;
    max-height: 25px; }
  .uxc-sidebar .uxc-link {
    font-weight: 600; }
  .uxc-sidebar .uxc-bottom {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 160px;
    margin: 0;
    z-index: 2; }
    .uxc-sidebar .uxc-bottom .uxc-btn-icon {
      margin-right: 0;
      margin-left: 5px;
  }
    .uxc-sidebar .uxc-bottom > .uxc-btn {
      display: none;
      margin: 0 0 15px 0; }

.uxc-nav > div {
  font-weight: 400;
  cursor: pointer;
  line-height: 24px;
  font-size: 12px;
  margin: 3px 3px;
  padding: 0 10px;
  color: var(--uxc-text-secondary);
  transition: background .15s ease, color .15s ease;
  display: flex;
  align-content: center;
  align-items: center; }
  /* Desktop nav buttons are 32px tall in expanded mode (group titles excluded). Collapsed is already 32px; peek handled below. */
  .uxc-nav > div:not(.uxc-nav-group) { min-height: 32px; }
  /* Mobile-only drawer account surfaces (profile card, credit row, footer): hidden on desktop, shown only in the <=768px drawer (the show rules later in the file win on mobile). */
  .uxc-nav > .uxc-drawer-profile, .uxc-nav > .uxc-drawer-credit, .uxc-sidebar > .uxc-drawer-footer, .uxc-sidebar > .uxc-drawer-dashrow { display: none !important; }
  .uxc-nav > div:hover { background: rgba(0,0,0,0.05); color: var(--uxc-text-primary); }
  .uxc-nav > div.uxc-active { background: rgba(0,0,0,0.06); color: var(--uxc-text-primary); font-weight: 600; }
  .uxc-dark-mode .uxc-nav > div { color: var(--uxc-text-secondary); }
  .uxc-dark-mode .uxc-nav > div:hover { background: rgba(255,255,255,0.06); color: var(--uxc-text-primary); }
  .uxc-dark-mode .uxc-nav > div.uxc-active { background: rgba(255,255,255,0.08); color: var(--uxc-text-primary); }
  .uxc-nav > div:active i { transform: scale(0.95); }
  .uxc-nav > div > span { color: #1a1a1a; }
  .uxc-dark-mode .uxc-nav > div > span { color: #ffffff; }
  .uxc-nav-logout { margin-bottom: 8px; }
.uxc-nav i {
  color: var(--uxc-text-secondary);
  display: inline-block;
  margin-top: 0;
  margin-right: 10px;
  font-size: 16px;
  line-height: 0; }
  .uxc-nav i.uxc-icon-dollar {
    margin-right: 12px; }
  .uxc-nav i svg {
    width: 16px;
    height: 16px;
    vertical-align: middle; }
  .uxc-nav i.uxc-icon-shopping-cart {
    margin-right: 12px; }

/* ---- Collapsible categorized sidebar ---- */
.uxc-sidebar-head { display: flex; align-items: center; justify-content: space-between; padding: 0 14px; min-height: 42px; flex: 0 0 auto; border-bottom: 1px solid var(--uxc-border-color, #e6e6e6); }
.uxc-sidebar > .uxc-sidebar-foot { flex: 0 0 auto; border-top: 1px solid var(--uxc-border-color, #e6e6e6); padding: 8px; }
.uxc-sidebar-head > div:not(.uxc-nav-collapse):not(.uxc-nav-open-btn) { flex: 1; }
.uxc-nav-collapse, .uxc-nav-open-btn { background: none; border: none; cursor: pointer; color: var(--uxc-text-muted, #999); padding: 5px; display: none; align-items: center; justify-content: center; border-radius: 0; transition: color 0.2s, background 0.2s; }
.uxc-nav-collapse { display: flex; width: 100%; gap: 10px; justify-content: flex-start; padding: 3px; border-radius: 0; box-sizing: border-box; font-size: 14px; font-weight: 500; color: var(--uxc-text-secondary); overflow: hidden; }
.uxc-nav-collapse-label { font-size: 14px; white-space: nowrap; max-width: 100%; min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.uxc-nav-collapse-label .uxc-cl-expand { display: none; }
.uxc-sidebar.uxc-collapsed .uxc-nav-collapse-label .uxc-cl-collapse { display: none; }
.uxc-sidebar.uxc-collapsed .uxc-nav-collapse-label .uxc-cl-expand { display: inline; }
.uxc-nav-collapse:hover, .uxc-nav-open-btn:hover { color: var(--uxc-text-primary); background: rgba(0,0,0,0.04); }
/* Theme + Logout live in the avatar dropdown (desktop) and the drawer footer (mobile); #account is visible in the sidebar/drawer (redundancy is good for account access). Kept in the DOM: #uxc-theme-toggle is referenced by uxcApplyTheme. */
.uxc-nav > #uxc-theme-toggle, .uxc-nav > .uxc-nav-logout { display: none !important; }
.uxc-nav-collapse svg { transition: transform 0.25s ease; }

.uxc-nav .uxc-nav-group { font-size: 9px; text-transform: uppercase; letter-spacing: 0.04em; --uxc-grp: #6a6a6a; color: var(--uxc-text-primary); font-weight: 600; padding: 10px 14px 0; margin: 0; border-radius: 0; line-height: 7px; cursor: default; }
.uxc-nav .uxc-nav-group:hover { background: transparent !important; color: var(--uxc-grp) !important; }
.uxc-dark-mode .uxc-nav .uxc-nav-group { --uxc-grp: #9a9a9a; color: var(--uxc-text-primary); }
/* Collapsed sidebar: category titles become thin centered divider lines.
   The direct-child selector (.uxc-nav > .uxc-nav-group, specificity 0,4,0)
   intentionally beats the generic ".uxc-nav > div" icon-row rule (0,3,1);
   without it these titles get inflated to 32px icon slots. Zero top/bottom
   padding and margin so the divider sits flush between icon groups. */
@media (min-width: 768px) {
  .uxc-sidebar.uxc-collapsed .uxc-nav > .uxc-nav-group { height: 1px; min-height: 1px; padding-top: 4px; padding-bottom: 4px; margin-top: 0; margin-bottom: 0; overflow: hidden; font-size: 0; color: transparent; justify-content: center; }
  .uxc-sidebar.uxc-collapsed .uxc-nav > .uxc-nav-group::after { content: ''; display: block; width: 20px; height: 1px; margin: 0 auto; background: var(--uxc-border-color, #e0e0e0); }
}
/* Nav is the only scroll region (head/foot are pinned via flex); modern branded scrollbar */
.uxc-nav { flex: 1 1 auto; overflow-y: auto; overflow-x: hidden; padding: 8px 0; scrollbar-width: thin; scrollbar-color: #999 transparent; }
.uxc-nav::-webkit-scrollbar { width: 2px; }
.uxc-nav::-webkit-scrollbar-button { display: none; }
.uxc-nav::-webkit-scrollbar-track { background: transparent; }
.uxc-nav::-webkit-scrollbar-thumb { background: #999; border-radius: 3px; }
.uxc-nav::-webkit-scrollbar-thumb:hover { background: #777; }
.uxc-dark-mode .uxc-nav { scrollbar-color: #3a3a3a transparent; }
.uxc-dark-mode .uxc-nav::-webkit-scrollbar-thumb { background: #3a3a3a; }
.uxc-dark-mode .uxc-nav::-webkit-scrollbar-thumb:hover { background: #555; }
/* Hide the nav scrollbar in the collapsed icon rail (still scrollable via wheel/trackpad). Desktop only. */
@media (min-width: 768px) {
  .uxc-sidebar.uxc-collapsed .uxc-nav { scrollbar-width: none; }
  .uxc-sidebar.uxc-collapsed .uxc-nav::-webkit-scrollbar { display: none; }
}
/* Peek (collapsed + hover-expand): re-enable the thin custom scrollbar so the nav scrolls. */
.uxc-sidebar.uxc-collapsed.uxc-peek .uxc-nav { scrollbar-width: thin; scrollbar-color: #999 transparent; }
.uxc-sidebar.uxc-collapsed.uxc-peek .uxc-nav::-webkit-scrollbar { width: 2px; display: block; }

/* Minimal branded scrollbar across the admin: thin, no up/down arrow buttons */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--uxc-accent); border-radius: 8px; border: 2px solid transparent; background-clip: padding-box; }
::-webkit-scrollbar-thumb:hover { background: #c9982f; background-clip: padding-box; }
::-webkit-scrollbar-button { display: none; }
html { scrollbar-width: thin; scrollbar-color: var(--uxc-accent) transparent; }
/* Left separator on the scrollbar so it reads as distinct from the content area. Track borders don't paint in webkit, so use a 1px gradient line (theme-aware). Unscoped to match the global thumb rule; nav/lightbox/currency-grid keep their own track rules. */
::-webkit-scrollbar-track { background: linear-gradient(to right, var(--uxc-border-color) 1px, transparent 1px); }
.uxc-nav-group-items { max-height: 0; overflow: hidden; opacity: 0; transition: opacity 0.2s ease; }
.uxc-nav-group.uxc-open + .uxc-nav-group-items { max-height: 300px; opacity: 1; }

.uxc-nav-account { margin-top: auto; padding-bottom: 8px; }
.uxc-nav-account .uxc-nav-action { display: flex; align-items: center; justify-content: space-between; padding: 8px 20px; }
.uxc-nav-account .uxc-nav-action .uxc-link { display: flex; align-items: center; font-size: 14px; }
.uxc-nav-account .uxc-nav-action .uxc-btn-icon { font-size: 18px; }

/* Collapsed state (desktop toggle or auto <980px). DESKTOP ONLY (>=768): the <=767px mobile
   drawer is a separate fixed-position surface that always shows the FULL sidebar - a persisted
   uxc-nav-collapsed flag from desktop must never shrink or strip it. */
@media (min-width: 768px) {
  .uxc-sidebar.uxc-collapsed { width: 38px; overflow: visible; }
  .uxc-sidebar.uxc-collapsed .uxc-logo { display: none; }
  .uxc-sidebar.uxc-collapsed .uxc-logo-icon { display: block; margin: 0 auto; height: 30px; max-height: 30px; }
  .uxc-nav-collapse .uxc-expand-ic { display: none; }
  .uxc-sidebar.uxc-collapsed .uxc-nav-collapse .uxc-collapse-ic { display: none; }
  .uxc-sidebar.uxc-collapsed .uxc-nav-collapse .uxc-expand-ic { display: block; }
  .uxc-sidebar.uxc-collapsed .uxc-nav-collapse { justify-content: center; }
  .uxc-sidebar.uxc-collapsed .uxc-nav-collapse-label { display: none; }
  .uxc-sidebar.uxc-collapsed .uxc-nav > div > span,
  .uxc-sidebar.uxc-collapsed .uxc-nav-group > span,
  .uxc-sidebar.uxc-collapsed .uxc-nav-group::before,
  .uxc-sidebar.uxc-collapsed .uxc-nav-account .uxc-nav-user-email,
  .uxc-sidebar.uxc-collapsed .uxc-nav-account .uxc-nav-action .uxc-link span { display: none; }
  .uxc-sidebar.uxc-collapsed .uxc-nav > div { justify-content: center; margin: 3px; padding: 0; min-height: 32px; height: 32px; }
  .uxc-sidebar.uxc-collapsed .uxc-nav > div > i { margin: 0 auto; display: block; }
  /* collapsed group header handled above (height 8px, text hidden via font-size:0) */
  .uxc-sidebar.uxc-collapsed .uxc-nav-group-items { max-height: 300px !important; opacity: 1 !important; overflow: visible; }
  .uxc-sidebar.uxc-collapsed .uxc-nav-account .uxc-nav-action { justify-content: center; }
  .uxc-sidebar.uxc-collapsed .uxc-sidebar-head { overflow: hidden; }
  /* Collapsed: bottom buttons show icons, hide text */
  .uxc-sidebar .uxc-bottom .uxc-btn-icon { display: none; }
  .uxc-sidebar.uxc-collapsed .uxc-bottom .uxc-btn-icon { display: inline-block; }
  .uxc-sidebar.uxc-collapsed .uxc-bottom .uxc-btn-text { display: none; }
  .uxc-sidebar.uxc-collapsed .uxc-bottom .uxc-btn { padding: 8px; justify-content: center; }
}
/* Collapsed (desktop/tablet only; never the <=768px mobile drawer): zero the
   20px left indent from .uxc-sidebar > div so the logo-icon, nav icons and
   bottom CTA center in the 64px rail. Expanded + mobile-drawer keep the indent. */
@media (min-width: 768px) {
  .uxc-sidebar.uxc-collapsed > div:not(.uxc-sidebar-foot) { padding-left: 0; }
}

/* Collapsed hover-expand (peek): driven by a JS-added .uxc-peek class (mouseenter/mouseleave) so a collapse-click (mouse already inside) does NOT re-expand and break the toggle. Desktop only. */
@media (min-width: 768px) {
  .uxc-sidebar.uxc-collapsed { transition: width .18s ease; }
  .uxc-sidebar.uxc-collapsed.uxc-peek { width: 160px; box-shadow: 2px 0 10px rgba(0,0,0,.18); z-index: 999996; }
  .uxc-sidebar.uxc-collapsed.uxc-peek .uxc-nav > div { width: auto; margin: 3px 3px; padding: 0 10px; min-height: 0; height: auto; justify-content: flex-start; }
  .uxc-sidebar.uxc-collapsed.uxc-peek .uxc-nav > div:not(.uxc-nav-group) { min-height: 32px; }
  /* Peek reveals an OPEN submenu (e.g. Settings while on a settings page): the item carries
     uxc-open from the active-area sync, so hovering the collapsed sidebar shows its sections. */
  .uxc-sidebar.uxc-collapsed.uxc-peek .uxc-nav > [data-nav-submenu].uxc-open { display: flex !important; }
  /* Icon gap mirrors the expanded cascade exactly (.uxc-nav i = 10px; dollar/cart glyphs = 12px) so peek->expand has zero shift. */
  .uxc-sidebar.uxc-collapsed.uxc-peek .uxc-nav > div > i { margin: 0 10px 0 0; display: inline-block; width: 16px; }
  .uxc-sidebar.uxc-collapsed.uxc-peek .uxc-nav > div > i.uxc-icon-dollar,
  .uxc-sidebar.uxc-collapsed.uxc-peek .uxc-nav > div > i.uxc-icon-shopping-cart { margin-right: 12px; }
  .uxc-sidebar.uxc-collapsed.uxc-peek .uxc-nav > div > span,
  .uxc-sidebar.uxc-collapsed.uxc-peek .uxc-nav-group > span,
  .uxc-sidebar.uxc-collapsed.uxc-peek .uxc-nav-account .uxc-nav-user-email,
  .uxc-sidebar.uxc-collapsed.uxc-peek .uxc-nav-account .uxc-nav-action .uxc-link span { display: inline; }
  /* full mirror of the expanded group cascade: collapsed also sets min-height/overflow/justify-content (divider centering) - restore all or the title text centers in peek and jumps left on expand */
  .uxc-sidebar.uxc-collapsed.uxc-peek .uxc-nav > .uxc-nav-group { height: auto; min-height: 0; overflow: visible; margin: 0; font-size: 9px; color: var(--uxc-text-primary); padding: 10px 14px 0; justify-content: flex-start; }
  .uxc-sidebar.uxc-collapsed.uxc-peek .uxc-nav-group::after { display: none; }
  .uxc-sidebar.uxc-collapsed.uxc-peek .uxc-logo { display: block; }
  .uxc-sidebar.uxc-collapsed.uxc-peek .uxc-logo-icon { display: none; }
  .uxc-sidebar.uxc-collapsed.uxc-peek .uxc-nav-collapse-label { display: inline; }
  .uxc-sidebar.uxc-collapsed.uxc-peek .uxc-nav-collapse { justify-content: flex-start; padding: 3px; }
  .uxc-sidebar.uxc-collapsed.uxc-peek .uxc-nav-account .uxc-nav-action { justify-content: space-between; }
}

/* Body padding when collapsed */
.uxc-main.uxc-nav-collapsed .uxc-body { /* collapsed offset now via --uxc-content-left */ }

/* Mobile drawer (<=768px): show FULL expanded sidebar (not collapsed), no horizontal scroll */
@media (max-width: 767px) {
  .uxc-sidebar { overflow: hidden !important; }
  .uxc-sidebar .uxc-nav { overflow-x: hidden; }
  .uxc-sidebar .uxc-nav > div:not(#uxc-theme-toggle) span { display: inline !important; }
  .uxc-sidebar .uxc-nav > div { justify-content: flex-start !important; }
  .uxc-sidebar .uxc-nav > div i { margin-right: 12px; }
  /* Nav-group headers inherit the desktop expanded look (uppercase, --uxc-grp color, ::after separator line). */
  .uxc-sidebar .uxc-bottom .uxc-btn-text { display: inline; }
  .uxc-sidebar .uxc-bottom .uxc-btn-icon { display: none; }
}
@media (max-width: 767px) {
  .uxc-nav-open-btn { display: flex !important; }
  .uxc-nav-collapse { display: none !important; }
  .uxc-sidebar-foot { display: none !important; }
  .uxc-sidebar .uxc-logo-icon { margin-left: auto; margin-right: auto; }
}
@media (max-width: 767px) {
  .uxc-sidebar { background: #fff !important; border: none !important; z-index: 999999 !important; }
  .uxc-dark-mode .uxc-sidebar { background: #000 !important; }
}
@media (max-width: 767px) {
  .uxc-sidebar .uxc-bottom { position: fixed; top: 0; left: 50px; right: 50px; height: 32px; display: flex; align-items: center; gap: 6px; z-index: 999996; width: auto; }
  .uxc-sidebar .uxc-bottom .uxc-btn { flex: 0 0 auto; padding: 6px 10px; font-size: 12px; }
  .uxc-sidebar .uxc-bottom .uxc-btn-text { display: inline; }
  .uxc-sidebar .uxc-bottom .uxc-btn-icon { display: none; }
  .uxc-nav-open-btn { position: relative !important; flex: 0 0 auto !important; align-self: stretch !important; height: auto !important; width: 32px; display: flex !important; align-items: center; justify-content: center; border-radius: 0; }
  .uxc-nav-open-btn svg { width: 16px; height: 16px; }
}

/* Content left offset tracks the sidebar: expanded 172px, collapsed 54px, peek (collapsed+hover) back to 172px. */
.uxc-main { --uxc-content-left: 172px; }
@media (min-width: 768px) { /* desktop-only: mobile body padding is !important-fixed and must never see the collapsed value */
  .uxc-main.uxc-nav-collapsed { --uxc-content-left: 54px; }
}
.uxc-main:has(.uxc-sidebar.uxc-collapsed.uxc-peek) { --uxc-content-left: 172px; }
.uxc-main:has(.uxc-sidebar.uxc-collapsed.uxc-peek) .uxc-dashboard-header { flex-wrap: nowrap !important; }

.uxc-body {
  padding: 0 12px 60px var(--uxc-content-left, 190px);
  border-left: 1px solid var(--uxc-border-color, #e6e6e6);
  border-right: 1px solid var(--uxc-border-color, #e6e6e6);
  transition: padding-left .2s ease; }
/* Desktop: trim the bottom padding so the admin footer (margin-bottom: -24px) sits flush at the bottom
   instead of swimming in 60px. Mobile keeps 60px (the footer is fine there). */
@media (min-width: 769px) { .uxc-body { padding-bottom: 24px; } }

.uxc-info-card {
  position: fixed;
  bottom: 10px;
  right: 10px;
  left: 10px;
  border-radius: 0;
  padding: 10px 30px;
  background: #1a9260;
  color: #fff;
  text-align: center;
  box-shadow: 0 4px 14px 0 rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(0, 0, 0, 0.05);
  cursor: pointer;
  z-index: 9999995;
  display: none;
  font-size: 15px;
  font-weight: 600;
  line-height: 25px;
  letter-spacing: 0.5px;
  color: #fff; }
  .uxc-info-card span, .uxc-info-card a {
    text-decoration: underline;
    color: #fff; }
    .uxc-info-card span:hover, .uxc-info-card a:hover {
      text-decoration: none; }
  .uxc-info-card:not(:empty) {
    display: block;
    animation: uxc-fade-bottom .5s; }
  .uxc-info-card.uxc-info-card-error {
    background: #ca3434; }
  .uxc-info-card.uxc-info-card-info {
    background: #5c7171; }

.uxc-top {
  padding-bottom: 50px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  position: relative; }
  .uxc-top + div {
    margin-top: 0 !important; }

.uxc-bottom {
  padding-top: 50px; }
/* SSO-only login box (no email/password fields): the title sits right above the button,
   so drop the big .uxc-top/.uxc-bottom spacing that's meant to separate form fields. */
.uxc-cloud-box:has(a[href="/sso.php?op=login"]) .uxc-top { padding-bottom: 12px; }
  /* NB: :empty misses template markup (whitespace text nodes count as children) - the checkout form's dead spacer was removed from the markup instead. */
  .uxc-top:empty,
  .uxc-bottom:empty {
    display: none !important; }

.uxc-area-transactions {
  max-width: none; }

.uxc-page-actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  margin: 0 0 16px; }

/* Per-page header bar: each page's toolbar (Transactions/Checkouts .uxc-nav-wide,
   Settings/Shop .uxc-page-actions) or title header (.uxc-page-header). Edge-to-edge via
   negative margins (breaks out of .uxc-body's padding so the fixed sidebar overlays its
   left edge), sticky below the beta banner; content flows below so expanding filter
   panels push the table. Transparent + border-bottom. */
.uxc-page-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0;
  min-height: 56px;
  padding: 0 4px;
  margin: 0 0 12px; }
.uxc-page-header .uxc-title { font-weight: 600; font-size: 16px; color: var(--uxc-text-primary, #1a1a1a); align-self: stretch; display: flex; align-items: center; border-right: 1px solid var(--uxc-border-color, #e6e6e6); padding: 0 14px 0 14px; }
.uxc-page-header-actions { display: flex; align-items: center; gap: 8px; margin-left: auto; align-self: stretch; border-left: 1px solid var(--uxc-border-color, #e6e6e6); padding: 0; }

/* Desktop: edge-to-edge, pinned below the beta notice bar. */
@media (min-width: 768px) {
  .uxc-body [data-area] > .uxc-nav-wide,
  .uxc-body [data-area] > .uxc-page-actions,
  .uxc-body [data-area] > .uxc-page-header { position: sticky; top: calc(var(--uxc-beta-banner-h, 0px) + var(--uxc-mode-banner-h, 0px)); z-index: 30; min-height: 42px; display: flex; align-items: center; margin-left: calc(-1 * var(--uxc-content-left, 190px)); margin-right: -12px; padding: 0 0 0 calc(var(--uxc-content-left, 190px) - 16px); background: transparent; -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); border-bottom: 1px solid var(--uxc-border-color, #e6e6e6); transition: margin-left .2s ease, padding-left .2s ease; }
}

/* Mobile: edge-to-edge, pinned under the 55px fixed top nav, auto-hides on scroll
   (.uxc-header-hidden toggled by admin.js). Body has 80px top padding so it clears the
   nav at scroll 0. */
@media (max-width: 767px) {
  .uxc-body [data-area] > .uxc-nav-wide,
  .uxc-body [data-area] > .uxc-page-actions,
  .uxc-body [data-area] > .uxc-page-header { position: sticky; top: 32px; z-index: 40; min-height: 42px; display: flex; align-items: center; margin-left: -15px; margin-right: -15px; padding: 0 15px; background: transparent; -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); border-bottom: 1px solid var(--uxc-border-color, #e6e6e6); transition: transform .25s ease; }
  .uxc-body [data-area] > .uxc-nav-wide.uxc-header-hidden,
  .uxc-body [data-area] > .uxc-page-actions.uxc-header-hidden,
  .uxc-body [data-area] > .uxc-page-header.uxc-header-hidden { transform: translateY(-130%); }
}

/* Primary action button in the page toolbar: solid U.CASH gold CTA */
.uxc-nav-wide > .uxc-btn:last-child,
.uxc-page-actions > .uxc-btn,
.uxc-page-header .uxc-btn { background-color: var(--uxc-accent); color: #fff; line-height: 32px; height: 32px; border-radius: 0; box-sizing: border-box; }
.uxc-nav-wide > .uxc-btn:last-child:hover,
.uxc-page-actions > .uxc-btn:hover,
.uxc-page-header .uxc-btn:hover { background-color: color-mix(in srgb, var(--uxc-accent), #000 18%); color: #fff; }
.uxc-dark-mode .uxc-nav-wide > .uxc-btn:last-child,
.uxc-dark-mode .uxc-page-actions > .uxc-btn,
.uxc-dark-mode .uxc-page-header .uxc-btn { background-color: transparent; border-color: var(--uxc-accent); color: var(--uxc-accent); }
.uxc-dark-mode .uxc-nav-wide > .uxc-btn:last-child:hover,

/* Payment-links builder submit (#uxc-create-payment-link, the full-width primary CTA at the form
   bottom): solid gold + white text in light, ghost outline in dark, gold fill on dark hover -
   mirroring the toolbar CTA treatment. ID-scoped so class-level rules (incl. the runtime
   theming <style>) can never repaint it gold-on-gold. */
#uxc-create-payment-link { background-color: var(--uxc-accent); color: #fff; border-color: var(--uxc-accent); }
#uxc-create-payment-link:hover, #uxc-create-payment-link:active { background-color: color-mix(in srgb, var(--uxc-accent), #000 18%); color: #fff; border-color: var(--uxc-accent); }
.uxc-dark-mode #uxc-create-payment-link { background-color: transparent; border-color: var(--uxc-accent); color: var(--uxc-accent); }
.uxc-dark-mode #uxc-create-payment-link:hover, .uxc-dark-mode #uxc-create-payment-link:active { background-color: var(--uxc-accent); color: #1a1300; border-color: var(--uxc-accent); }
.uxc-dark-mode .uxc-page-actions > .uxc-btn:hover,
.uxc-dark-mode .uxc-page-header .uxc-btn:hover { background-color: var(--uxc-accent); color: #fff; }
/* Page-header action buttons (Save Shop, Save settings, + Add staff): borderless ghost buttons.
   Default transparent + accent text/icon; hover shifts text+icon to black (light) / white (dark), no fill. */
.uxc-page-header .uxc-btn,
.uxc-dark-mode .uxc-page-header .uxc-btn { background-color: transparent; border: 0; color: var(--uxc-accent); }
.uxc-page-header .uxc-btn:hover { background-color: transparent; color: #000; }
.uxc-dark-mode .uxc-page-header .uxc-btn:hover { background-color: transparent; color: #fff; }
.uxc-page-header .uxc-btn:hover .uxc-btn-text { color: inherit; }
.uxc-page-header .uxc-btn .uxc-btn-text { display: inline-flex; align-items: center; gap: 7px; }
.uxc-page-header .uxc-btn .uxc-save-icon { width: 16px; height: 16px; }
/* Nav-wide primary CTAs (Request a payment, Create checkout): same borderless ghost treatment as page-header actions.
   Beats the gold-bordered .uxc-nav-wide > .uxc-btn:last-child dark-mode rule by ID specificity.
   inline-flex lives on the button div (not .uxc-btn-text) because the + icon is a sibling of the text span. */
#uxc-request-payment, #uxc-create-checkout { display: inline-flex; align-items: center; gap: 7px; background-color: transparent; border: 0; color: var(--uxc-accent); }
#uxc-request-payment:hover, #uxc-create-checkout:hover { background-color: transparent; color: #000; }
.uxc-dark-mode #uxc-request-payment:hover, .uxc-dark-mode #uxc-create-checkout:hover { background-color: transparent; color: #fff; }
#uxc-request-payment:hover .uxc-btn-text, #uxc-create-checkout:hover .uxc-btn-text { color: inherit; }
/* Request-payment button shows the + icon on desktop (like the dashboard's create-payment). Mobile: button becomes a compact + icon. */
#uxc-request-payment .uxc-request-pay-icon, #uxc-create-checkout .uxc-create-checkout-icon { display: inline-block; vertical-align: middle; margin-right: 0; }
/* Balance refresh: right-aligned header cell that mirrors the dashboard's create-payment ghost button
   (single left divider, transparent bg, accent text, darkens on hover). Icon spins on click/hover. */
.uxc-page-header > #uxc-balance-refresh { margin-left: auto; align-self: stretch; display: inline-flex; align-items: center; gap: 7px; height: auto; padding: 0 14px; border-left: 1px solid var(--uxc-border-color, #e6e6e6); cursor: pointer; }
.uxc-page-header > #uxc-balance-refresh .uxc-refresh-icon { transition: transform .4s ease; }
.uxc-page-header > #uxc-balance-refresh:hover .uxc-refresh-icon { transform: rotate(180deg); }
/* Landers header: file-menu icon (Template/Export/Import behind one button) + New Lander primary,
   mirroring the Checkouts header. The actions box becomes two flush full-height cells. */
[data-area="landers"] .uxc-page-header-actions { gap: 0; }
[data-area="landers"] .uxc-page-header-actions > #uxc-lander-files { align-self: stretch; height: auto; width: 42px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; padding: 0; background: none; border: 0; border-right: 1px solid var(--uxc-border-color, #e6e6e6); cursor: pointer; color: var(--uxc-text-muted, #999); }
[data-area="landers"] .uxc-page-header-actions > #uxc-lander-files:hover { color: var(--uxc-text-primary, #1a1a1a); }
.uxc-dark-mode [data-area="landers"] .uxc-page-header-actions > #uxc-lander-files:hover { color: #fff; }
@media (max-width: 767px) {
  #uxc-request-payment { flex-shrink: 0; width: 32px; padding: 0; }
  #uxc-request-payment .uxc-btn-text { display: none; }
  #uxc-request-payment .uxc-request-pay-icon { display: inline-block; }
}
/* Size header-bar controls to fit the 32px header (scoped; inputs/buttons elsewhere keep their height). */
.uxc-body [data-area] > .uxc-nav-wide .uxc-input input { height: 32px; min-height: 32px; line-height: 30px; box-sizing: border-box; }
.uxc-body [data-area] > .uxc-nav-wide .uxc-btn-icon { width: 32px; height: 32px; box-sizing: border-box; }

#uxc-version {
  display: none; }

.uxc-area-create-checkout #uxc-create-checkout, .uxc-area-create-checkout #uxc-table-checkouts {
  display: none; }
.uxc-area-create-checkout #uxc-checkouts-form {
  display: block;
  animation: uxc-fade-in .5s; }

#uxc-checkouts-form {
  display: none; }
  #uxc-checkouts-form .uxc-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center; }

#uxc-save-checkout {
  min-width: 134px; }

#uxc-delete-checkout {
  display: none; }

#uxc-checkout-embed-code, #uxc-checkout-payment-link, #uxc-checkout-shortcode, #uxc-payment-request-url-box {
  position: relative;
  display: none; }
  #uxc-checkout-embed-code div, #uxc-checkout-embed-code a, #uxc-checkout-payment-link div, #uxc-checkout-payment-link a, #uxc-checkout-shortcode div, #uxc-checkout-shortcode a, #uxc-payment-request-url-box div, #uxc-payment-request-url-box a {
    width: 100%;
    min-width: 0;
    padding: 15px 40px 15px 15px;
    border-radius: 0;
    font-size: 13px;
    font-weight: 400;
    text-decoration: none;
    overflow: hidden; }
  #uxc-checkout-shortcode i, #uxc-payment-request-url-box i {
    position: absolute;
    right: 0;
    top: 5px;
    color: #fff;
    width: 35px;
    height: 35px;
    line-height: 40px;
    text-align: center;
    border-radius: 0;
    z-index: 9; }
    #uxc-checkout-shortcode i:hover, #uxc-payment-request-url-box i:hover {
      color: var(--uxc-accent); }

[data-checkout-id] #uxc-delete-checkout {
  display: inline-block; }
  [data-checkout-id] #uxc-delete-checkout:hover {
    color: #ca3434 !important;
    border-color: var(--uxc-error) !important;
    background-color: rgba(155, 155, 155, 0.1) !important; }

[data-checkout-id] #uxc-checkout-embed-code, [data-checkout-id] #uxc-checkout-payment-link, [data-checkout-id] #uxc-checkout-shortcode, #uxc-payment-request-url-box {
  display: flex; }

#uxc-payment-request-url-box i {
  top: 50%;
  transform: translateY(-50%); }

#uxc-table-checkouts {
  border-collapse: separate;
  border-spacing: 0 6px;
  width: 100%; }
  #uxc-table-checkouts td:last-child {
    text-align: right; }
  #uxc-table-checkouts th[data-field="amount"] {
    text-align: right; }
  #uxc-table-checkouts .uxc-title span:first-child {
    padding-right: 10px;
    opacity: .7; }
  #uxc-table-checkouts tbody tr td {
    border-top: 1px solid var(--uxc-border-color);
    border-bottom: 1px solid var(--uxc-border-color);
    border-radius: 0;
    padding: 15px; }
  #uxc-table-checkouts tbody tr td:first-child {
    border-left: 1px solid var(--uxc-border-color); }
  #uxc-table-checkouts tbody tr td:last-child {
    border-right: 1px solid var(--uxc-border-color); }

/* Account > Sandbox section: block spacing + the console-table skin (Payments/Checkouts parity). */
.uxc-sandbox-block {
  margin-top: 28px; }
.uxc-sandbox-block-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px; }
.uxc-sandbox-block-title {
  font-weight: 600; }
.uxc-sandbox-block-hint {
  opacity: .75;
  margin: 0 0 10px;
  font-size: 12px; }
.uxc-sandbox-settled {
  opacity: .6; }
.uxc-sandbox-badge {
  display: inline-block;
  font: 700 10px/1 inherit;
  letter-spacing: .08em;
  padding: 3px 8px;
  border-radius: 0;
  text-transform: uppercase; }
.uxc-sandbox-badge-sim {
  border: 1px solid #f5c451;
  color: #8a6414; }
.uxc-sandbox-badge-tn {
  border: 1px solid #63e6b3;
  color: #2c8a6d; }
.uxc-dark .uxc-sandbox-badge-sim, .uxc-dark-mode .uxc-sandbox-badge-sim {
  color: #f5c451; }
.uxc-dark .uxc-sandbox-badge-tn, .uxc-dark-mode .uxc-sandbox-badge-tn {
  color: #63e6b3; }
#uxc-table-sandbox, #uxc-table-sandbox-checkouts {
  border-collapse: separate;
  border-spacing: 0 6px;
  width: 100%; }
#uxc-table-sandbox th[data-field="amount"], #uxc-table-sandbox td[data-label="Amount"],
#uxc-table-sandbox-checkouts th[data-field="amount"], #uxc-table-sandbox-checkouts td[data-label="Amount"],
#uxc-table-sandbox td:last-child, #uxc-table-sandbox-checkouts td:last-child {
  text-align: right; }
#uxc-table-sandbox tbody tr td, #uxc-table-sandbox-checkouts tbody tr td {
  border-top: 1px solid var(--uxc-border-color);
  border-bottom: 1px solid var(--uxc-border-color);
  border-radius: 0;
  padding: 15px; }
#uxc-table-sandbox tbody tr td:first-child, #uxc-table-sandbox-checkouts tbody tr td:first-child {
  border-left: 1px solid var(--uxc-border-color); }
#uxc-table-sandbox tbody tr td:last-child, #uxc-table-sandbox-checkouts tbody tr td:last-child {
  border-right: 1px solid var(--uxc-border-color); }

#uxc-table-balances {
  border-collapse: separate;
  border-spacing: 0 6px;
  width: 100%; }
  #uxc-table-balances td {
    font-weight: 600; }
  #uxc-table-balances th[data-field="balance"] {
    text-align: right; }
  #uxc-table-balances th:first-child {
    width: 75%; }
  #uxc-table-balances th:last-child, #uxc-table-balances td:last-child {
    width: 25%;
    text-align: right; }
  #uxc-table-balances .uxc-title + .uxc-text {
    margin-top: 5px;
    font-weight: 400;
    line-height: 15px; }
  #uxc-table-balances .uxc-balance {
    font-size: 14px;
    font-weight: 500;
    display: flex;
    justify-content: flex-end; }
  #uxc-table-balances tbody tr td {
    border-top: 1px solid var(--uxc-border-color);
    border-bottom: 1px solid var(--uxc-border-color);
    border-radius: 0;
    padding: 15px; }
  #uxc-table-balances tbody tr td:first-child {
    border-left: 1px solid var(--uxc-border-color); }
  #uxc-table-balances tbody tr td:last-child {
    border-right: 1px solid var(--uxc-border-color); }

.uxc-no-wallets {
  border: 1px solid;
  background: none;
  border-radius: 0;
  text-align: center;
  padding: 15px;
  color: #5c7171; }

#uxc-table-transactions {
  border-collapse: separate;
  border-spacing: 0 6px;
  width: 100%; }

#uxc-table-transactions [data-field="status"], #uxc-table-transactions .uxc-td-status, #uxc-table-transactions [data-field="amount"], #uxc-table-transactions .uxc-td-amount {
  max-width: 140px; }
#uxc-table-transactions [data-field="date"], #uxc-table-transactions .bcx-td-time {
  max-width: 150px;
  width: 150px; }
#uxc-table-transactions .uxc-td-time .uxc-title, #uxc-table-transactions .uxc-td-amount .uxc-title div + div {
  font-weight: 400; }
#uxc-table-transactions .uxc-td-amount {
  padding: 0 15px; }
  #uxc-table-transactions .uxc-td-amount .uxc-title {
    margin: -7px 0; }
#uxc-table-transactions th[data-field="amount"], #uxc-table-transactions td:last-child {
  text-align: right; }
#uxc-table-transactions .uxc-link {
  text-decoration: none;
  color: #464646;
  display: block; }
  #uxc-table-transactions .uxc-link:hover {
    color: var(--uxc-accent); }
#uxc-table-transactions .bcx-td-time span + span {
  font-weight: 400;
  display: block;
  margin-top: 5px; }
#uxc-table-transactions.uxc-loading {
  height: 50px; }
  #uxc-table-transactions.uxc-loading tbody, #uxc-table-transactions.uxc-loading thead {
    display: none; }
#uxc-table-transactions tbody td {
    border-top: 1px solid var(--uxc-border-color);
    border-bottom: 1px solid var(--uxc-border-color);
    border-radius: 0;
    padding: 15px; }
#uxc-table-transactions tbody td:first-child {
    border-left: 1px solid var(--uxc-border-color); }
#uxc-table-transactions tbody td:last-child {
    border-right: 1px solid var(--uxc-border-color); }
.uxc-dark-mode #uxc-table-transactions tbody td {
    border-top-color: var(--uxc-border-color);
    border-bottom-color: var(--uxc-border-color); }
.uxc-dark-mode #uxc-table-transactions tbody td:first-child {
    border-left-color: var(--uxc-border-color); }
.uxc-dark-mode #uxc-table-transactions tbody td:last-child {
    border-right-color: var(--uxc-border-color); }

/* Audit + staff: bordered row boxes matching transactions (desktop + tablet; mobile stays cards) */
@media (min-width: 768px) {
  #uxc-table-audit {
    border-collapse: separate;
    border-spacing: 0 6px;
    width: 100%; }
  #uxc-table-audit tbody td {
    border-top: 1px solid var(--uxc-border-color);
    border-bottom: 1px solid var(--uxc-border-color);
    border-radius: 0;
    padding: 15px; }
  #uxc-table-audit tbody td:first-child {
    border-left: 1px solid var(--uxc-border-color); }
  #uxc-table-audit tbody td:last-child {
    border-right: 1px solid var(--uxc-border-color); }
  .uxc-dark-mode #uxc-table-audit tbody td {
    border-top-color: var(--uxc-border-color);
    border-bottom-color: var(--uxc-border-color); }
  .uxc-dark-mode #uxc-table-audit tbody td:first-child {
    border-left-color: var(--uxc-border-color); }
  .uxc-dark-mode #uxc-table-audit tbody td:last-child {
    border-right-color: var(--uxc-border-color); }

  #uxc-table-staff {
    border-collapse: separate;
    border-spacing: 0 6px;
    width: 100%; }
  #uxc-table-staff tbody td {
    border-top: 1px solid var(--uxc-border-color);
    border-bottom: 1px solid var(--uxc-border-color);
    border-radius: 0;
    padding: 15px; }
  #uxc-table-staff tbody td:first-child {
    border-left: 1px solid var(--uxc-border-color); }
  #uxc-table-staff tbody td:last-child {
    border-right: 1px solid var(--uxc-border-color); }
  .uxc-dark-mode #uxc-table-staff tbody td {
    border-top-color: var(--uxc-border-color);
    border-bottom-color: var(--uxc-border-color); }
  .uxc-dark-mode #uxc-table-staff tbody td:first-child {
    border-left-color: var(--uxc-border-color); }
  .uxc-dark-mode #uxc-table-staff tbody td:last-child {
    border-right-color: var(--uxc-border-color); }
}
#uxc-table-balances.uxc-loading {
  height: 120px; }
  #uxc-table-balances.uxc-loading tbody, #uxc-table-balances.uxc-loading thead {
    display: none; }
  #uxc-table-balances.uxc-loading:before {
    width: 40px;
    height: 40px;
    border: 3px solid rgba(var(--uxc-accent-rgb), 0.2);
    border-top-color: var(--uxc-accent);
    border-radius: 0;
    margin-top: -30px;
    margin-left: -20px; }
  #uxc-table-balances.uxc-loading:after {
    content: "Loading Balances...";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, 20px);
    text-indent: 0;
    font-size: 14px;
    color: #5c7171; }
#uxc-table-transactions .uxc-not-found {
  margin: 0 auto 28px; }
#uxc-table-transactions .uxc-transaction-menu-btn {
  line-height: 34px;
  height: 30px;
  width: 30px;
  position: absolute;
  top: 50%;
  margin-top: -15px; }
  #uxc-table-transactions .uxc-transaction-menu-btn:hover, #uxc-table-transactions .uxc-transaction-menu-btn.uxc-active {
    color: var(--uxc-accent); }
  #uxc-table-transactions .uxc-transaction-menu-btn + .uxc-ul {
    display: block;
    right: 35px;
    top: 50%;
    transform: translateY(-50%); }
  #uxc-table-transactions .uxc-transaction-menu-btn.uxc-loading {
    margin-left: -7.5px; }

.uxc-status-C, .uxc-status-P, .uxc-status-R, .uxc-status-X {
  position: relative;
  padding-left: 25px; }
  .uxc-status-C:before, .uxc-status-P:before, .uxc-status-R:before, .uxc-status-X:before {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    background-color: #1a9260;
    left: 0;
    top: 50%;
    margin-top: -5px;
    border-radius: 0; }
  .uxc-status-C.uxc-status-P:before, .uxc-status-P.uxc-status-P:before, .uxc-status-R.uxc-status-P:before, .uxc-status-X.uxc-status-P:before {
    background-color: #f69e00; }
  .uxc-status-C.uxc-status-R:before, .uxc-status-P.uxc-status-R:before, .uxc-status-R.uxc-status-R:before, .uxc-status-X.uxc-status-R:before {
    background-color: #ca3434; }
  .uxc-status-C.uxc-status-X:before, .uxc-status-P.uxc-status-X:before, .uxc-status-R.uxc-status-X:before, .uxc-status-X.uxc-status-X:before {
    background-color: #f6d000; }

[data-status="R"] td:not(:last-child) {
  opacity: .6; }

.bcx-td-id, th[data-field="id"] {
  max-width: 15px;
  width: 15px; }

.uxc-td-id {
  font-size: 11px !important;
  padding: 15px 0 15px 15px !important; }

.uxc-td-amount .uxc-text {
  text-transform: capitalize; }

.uxc-area-transactions .uxc-icon-search.uxc-loading:before {
  opacity: 0 !important; }

.uxc-area-transactions .uxc-pagination,
.uxc-area-checkouts .uxc-pagination {
  margin-bottom: 50px;
}

#uxc-version {
  font-weight: 400;
  font-size: 14px;
  line-height: 14px;
  margin-left: 10px;
  margin-right: 10px; }

[data-area="balances"].uxc-loading:not(.uxc-loading-first),
[data-area="balance"].uxc-loading:not(.uxc-loading-first) {
  text-indent: unset;
  display: block;
  overflow: visible; }
  [data-area="balances"].uxc-loading:not(.uxc-loading-first) *,
  [data-area="balance"].uxc-loading:not(.uxc-loading-first) * {
    opacity: 1 !important; }
  [data-area="balances"].uxc-loading:not(.uxc-loading-first):before,
  [data-area="balance"].uxc-loading:not(.uxc-loading-first):before {
    display: none; }

[data-area="transactions"] > .uxc-nav-wide .uxc-btn-icon,
[data-area="checkouts"] > .uxc-nav-wide .uxc-btn-icon {
  width: 36px;
  min-width: 36px;
  height: 36px; }
  [data-area="transactions"] > .uxc-nav-wide .uxc-btn-icon i,
  [data-area="checkouts"] > .uxc-nav-wide .uxc-btn-icon i {
    line-height: 36px;
    width: 36px; }

.uxc-not-found {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  box-sizing: border-box;
  grid-column: 1 / -1;
  margin: 0 auto 28px;
  padding: 38px 24px;
  text-align: center;
  border: 1px solid var(--uxc-border-color, #e6e6e6);
  border-radius: 0;
  background: transparent;
  color: var(--uxc-text-muted, #999);
  font-size: 15px;
  letter-spacing: .3px; }
.uxc-not-found::before {
  content: "";
  display: block;
  width: 38px;
  height: 38px;
  background-color: var(--uxc-text-muted, #999);
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http://www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%271.3%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M22%2012h-6l-2%203h-4l-2-3H2%27/%3E%3Cpath%20d%3D%27M5.45%205.11%202%2012v6a2%202%200%200%200%202%202h16a2%202%200%200%200%202-2v-6l-3.45-6.89A2%202%200%200%200%2016.76%204H7.24a2%202%200%200%200-1.79%201.11z%27/%3E%3C/svg%3E") no-repeat center / contain;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http://www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%271.3%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M22%2012h-6l-2%203h-4l-2-3H2%27/%3E%3Cpath%20d%3D%27M5.45%205.11%202%2012v6a2%202%200%200%200%202%202h16a2%202%200%200%200%202-2v-6l-3.45-6.89A2%202%200%200%200%2016.76%204H7.24a2%202%200%200%200-1.79%201.11z%27/%3E%3C/svg%3E") no-repeat center / contain;
  opacity: .6; }
.uxc-not-found-cell { padding: 0 !important; border: none !important; }
.uxc-table tr.uxc-not-found-row { border: none !important; padding: 0 !important; }

.uxc-transaction-details-list {
  margin-bottom: 15px; }

/* 

MISCELLANEOUS
==========================================================

*/
.uxc-login .uxc-input, .uxc-installation .uxc-input, .uxc-cloud-box .uxc-input {
  align-items: center; }
.uxc-login img, .uxc-installation img, .uxc-cloud-box img {
  max-width: 250px;
  margin-bottom: 50px; }
/* Cloud login/registration: stack the label text above a full-width input so the email/password fields fill the row. (2026-06-21) */
.uxc-cloud-box .uxc-input {
  display: block; }
.uxc-cloud-box .uxc-input > label {
  display: block; }
.uxc-cloud-box .uxc-input span {
  width: auto;
  min-width: 0;
  display: block;
  margin-bottom: 8px; }
.uxc-cloud-box .uxc-input input {
  width: 100%; }

#uxc-lightbox {
  position: fixed;
  background-color: rgba(255, 255, 255, 0.75);
  z-index: 999995;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  display: none; }
  #uxc-lightbox > div {
    position: fixed;
    border-radius: 0;
    padding: 0;
    background: #fff;
    box-shadow: 0 4px 14px 0 rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(0, 0, 0, 0.05);
    width: 100%;
    max-width: 700px;
    transform: translate(-50%, -50%);
    left: 50%;
    top: 50%; }
  #uxc-lightbox .uxc-top {
    padding: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px; }
    #uxc-lightbox .uxc-top #uxc-lightbox-close, #uxc-lightbox .uxc-top .uxc-btn + .uxc-btn {
      margin-left: 15px; }
  #uxc-lightbox > div #uxc-lightbox-close {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 10; }
  #uxc-lightbox [data-name] .uxc-loading {
    width: 20px;
    height: 20px; }
  #uxc-lightbox.uxc-active {
    display: block;
    animation: uxc-lightbox-animation 0.5s; }

#uxc-lightbox-main {
  padding: 0 20px 20px 20px; }
  #uxc-lightbox-main .uxc-input {
    align-items: center; }
    #uxc-lightbox-main .uxc-input span {
      padding-right: 30px; }
    #uxc-lightbox-main .uxc-input + .uxc-btn {
      margin-top: 30px; }

.uxc-lightbox-buttons {
  justify-content: space-between;
  padding: 15px 20px; }
  .uxc-lightbox-buttons > div {
    display: block; }

/* Grey button for cancel action */
.uxc-btn-grey {
  background-color: #888888;
  color: #fff; }
  .uxc-btn-grey:hover {
    background-color: #666666; }

/* Lightbox close button in buttons container */
.uxc-lightbox-buttons #uxc-lightbox-cancel {
  border: 1px solid var(--uxc-border-color);
  color: #000; }
  .uxc-lightbox-buttons #uxc-lightbox-cancel:hover {
    background-color: #666666;
    border-color: var(--uxc-border-color);
    color: #fff; }

/* Keep the icon close button styling */
.uxc-btn-icon#uxc-lightbox-close {
  background-color: transparent;
  color: #ca3434; }
  .uxc-btn-icon#uxc-lightbox-close:hover {
    background-color: transparent;
    color: #e43c3b; }

.uxc-dark-mode .uxc-btn-icon#uxc-lightbox-close {
  color: #e43c3b; }
  .uxc-dark-mode .uxc-btn-icon#uxc-lightbox-close:hover {
    color: #ff5c5b; }

/* Dark mode support */
.uxc-dark-mode .uxc-btn-grey {
  background-color: #666666;
  color: #fff; }
  .uxc-dark-mode .uxc-btn-grey:hover {
    background-color: #555555; }

.uxc-dark-mode .uxc-lightbox-buttons #uxc-lightbox-cancel {
  border: 1px solid var(--uxc-border-color);
  color: #fff; }
  .uxc-dark-mode .uxc-lightbox-buttons #uxc-lightbox-cancel:hover {
    background-color: #555555;
    border-color: var(--uxc-border-color);
    color: #fff; }

/* Lightbox button icons - show on all screens */
.uxc-lightbox-buttons .uxc-btn i {
  display: inline-block; }

#uxc-lightbox-loading {
  position: fixed;
  background-color: rgba(255, 255, 255, 0.75);
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: 999995;
  display: none; }
  #uxc-lightbox-loading.uxc-active {
    display: block;
    animation: uxc-fade-in 0.5s; }

#uxc-cancel-btn {
  background-color: #ca3434; }
  #uxc-cancel-btn:hover {
    background-color: #e43c3b; }

[data-lightbox-id="confirm"]#uxc-lightbox > div {
  max-width: 550px; }
[data-lightbox-id="confirm"] #uxc-lightbox-close {
  display: none !important; }
[data-lightbox-id="confirm"] #uxc-lightbox-main {
  overflow: hidden !important; }

.uxc-text-list > div {
  color: #464646; }
  .uxc-text-list > div > div:first-child {
    font-weight: 600;
    margin-bottom: 5px;
    font-size: 16px; }
  .uxc-text-list > div > div:last-child {
    font-size: 15px;
    line-height: 22px; }
  .uxc-text-list > div .uxc-title, .uxc-text-list > div .uxc-text {
    font-weight: 400;
    font-size: 15px;
    display: inline-block; }
  .uxc-text-list > div .uxc-text {
    margin: 0 !important;
    display: block; }
  .uxc-text-list > div a {
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
    color: #464646; }
  .uxc-text-list > div + div {
    margin-top: 15px; }

#uxc-upload-form {
  position: absolute;
  height: 0;
  width: 0;
  visibility: hidden;
  z-index: -1; }

/* 

# SHOP
==========================================================

*/
[data-name="data-license-key"] > div:last-child {
  display: flex;
  align-items: center;
  position: relative; }
[data-name="data-license-key"] .uxc-label {
  font-size: 12px;
  line-height: 13px; }
[data-name="data-license-key"] .uxc-btn-text {
  margin: 0 10px; }

[data-area="analytics"] .uxc-nav-wide {
  justify-content: space-between; }
[data-area="analytics"] #uxc-filters {
  display: block;
  margin-left: auto !important;
  flex-shrink: 0;
  order: 1; }
[data-area="analytics"] .uxc-nav-filters:not(.uxc-active) {
  display: none; }
[data-area="analytics"] .uxc-nav-filters {
  padding: 0; }

#uxc-analytics-earnings .uxc-title, #uxc-analytics-sales .uxc-title {
  font-size: 18px;
  line-height: 15px;
  white-space: nowrap; }
#uxc-analytics-earnings .uxc-text, #uxc-analytics-sales .uxc-text {
  margin-top: 14px !important;
  line-height: 10px;
  white-space: nowrap; }

#uxc-analytics-sales {
  padding-left: 40px;
  padding-right: 30px; }

#uxc-analytics-chart.uxc-loading canvas {
  visibility: hidden; }

#shop-page .uxc-setting-content p {
  overflow: hidden; }

/*  

RTL
==========================================================

*/
.uxc-rtl, .uxc-rtl textarea, .uxc-rtl input, .uxc-rtl ul, .uxc-rtl ul li {
  direction: rtl;
  text-align: right; }

.uxc-rtl {
  float: right; }
  .uxc-rtl .uxc-body {
    padding: 30px 190px 60px 30px; }
  .uxc-rtl .uxc-sidebar {
    left: auto;
    right: 0;
    border-right: none;
    border-left: 1px solid var(--uxc-border-color); }
    .uxc-rtl .uxc-sidebar > div {
      padding: 10px 30px 10px 0; }
    .uxc-rtl .uxc-sidebar .uxc-bottom {
      left: auto;
      right: 0; }
      .uxc-rtl .uxc-sidebar .uxc-bottom .uxc-btn-icon {
        margin-right: 0;
        margin-left: -10px; }
  .uxc-rtl .uxc-nav i {
    margin-left: 30px;
    margin-right: 0; }
  .uxc-rtl .uxc-nav > div {
    border-right: none;
    border-left: 2px solid var(--uxc-border-color); }
  .uxc-rtl .uxc-table td, .uxc-rtl .uxc-table th {
    text-align: right; }
  .uxc-rtl #uxc-table-checkouts .uxc-title span:first-child {
    float: right;
    padding-right: 0;
    padding-left: 10px; }
  .uxc-rtl .uxc-table img {
    margin-left: 15px;
    margin-right: 0; }
  .uxc-rtl .uxc-input > div {
    padding-left: 30px;
    padding-right: 0; }
  .uxc-rtl .uxc-flex .uxc-input + .uxc-input {
    margin: 0 15px 0 0 !important; }
  .uxc-rtl .uxc-btn i {
    margin-left: 15px;
    margin-right: 0; }
  .uxc-rtl .uxc-input .uxc-icon-help {
    margin: 0 5px 0 0; }

/* 

RESPONSIVE
==========================================================

*/
@media (max-width: 1024px) {
  .uxc-table tr:hover td {
    background-color: transparent; }

  .uxc-admin .uxc-input span {
  }

  .uxc-transaction-details-list .uxc-label {
    display: none; }

  #uxc-table-transactions tr, #uxc-table-transactions td {
    width: auto !important;
    max-width: 100% !important;
    overflow: hidden; }
  #uxc-table-transactions td {
    display: table-cell !important;
    vertical-align: middle;
    overflow: hidden;
    align-items: center;
    justify-content: space-between;
    padding: 15px; }
    #uxc-table-transactions td .uxc-label {
      margin: 0 30px 0 0;
      padding: 0;
      border: none;
      font-size: 13px; }
    #uxc-table-transactions td .uxc-title {
      font-weight: 400;
      font-size: 15px; }
  #uxc-table-transactions .uxc-td-id {
    font-size: 15px !important; }
  #uxc-table-transactions .uxc-td-amount, #uxc-table-transactions .uxc-td-id {
    padding: 15px !important; }
  #uxc-table-checkouts td, #uxc-table-balances td, #uxc-table-payments td {
    padding: 15px; }
  #uxc-table-transactions .uxc-title span + span, #uxc-table-transactions .uxc-title + .uxc-text {
    margin: 0 0 0 15px !important;
    color: #464646;
    font-size: 15px; }
  #uxc-table-transactions .uxc-title, #uxc-table-transactions .uxc-td-title, #uxc-table-transactions .uxc-td-amount {
    display: flex;
    align-items: center; }
  #uxc-table-transactions {
    border-collapse: separate;
    border-spacing: 0 8px;
  }
  #uxc-table-transactions tbody td {
    border-top: 1px solid var(--uxc-border-color);
    border-bottom: 1px solid var(--uxc-border-color);
  }
  #uxc-table-transactions tbody td:first-child {
    border-left: 1px solid var(--uxc-border-color);
  }
  #uxc-table-transactions tbody td:last-child {
    border-right: 1px solid var(--uxc-border-color);
  }
  #uxc-table-transactions tr:nth-child(2n+1) td {
    background: transparent; }
    #uxc-table-transactions tr:nth-child(2n+1) td .uxc-transaction-menu-btn + .uxc-ul {
      background: #fff; }
  #uxc-table-transactions tr:hover td {
    background-color: transparent; }
  #uxc-table-transactions .uxc-transaction-menu-btn {
    position: static;
    display: block;
    margin: auto;
    padding: 0;
    width: 100%; }
    #uxc-table-transactions .uxc-transaction-menu-btn + .uxc-ul {
      transform: none;
      position: static;
      box-shadow: none;
      background: none;
      margin: 0 -15px;
      background: #fff; }
      #uxc-table-transactions .uxc-transaction-menu-btn + .uxc-ul li {
        padding: 10px;
        font-size: 16px; }
    #uxc-table-transactions .uxc-transaction-menu-btn:before {
      transform: rotate(90deg);
      display: inline-block; }

  .uxc-setting-content {
    max-width: 300px;
    width: 300px; }

  .uxc-rtl #uxc-table-transactions .uxc-title span + span, .uxc-rtl #uxc-table-transactions .uxc-title + .uxc-text {
    margin: 0 15px 0 0 !important; } }
@media (max-width: 767px) {
  .uxc-table td {
    font-size: 13px; }
  [data-name="data-license-key"] .uxc-btn-text {
    position: absolute;
    top: -10px;
    right: -15px;
    background: white;
    border: 10px solid var(--uxc-border-color); }

  [data-area="transactions"] > .uxc-nav-wide .uxc-btn-icon {
    width: 43px; }
    [data-area="transactions"] > .uxc-nav-wide .uxc-btn-icon i:before {
      font-size: 21px; }

  .uxc-btn {
    font-size: 16px;
    height: 43px;
    line-height: 43px; }

  #uxc-table-balances .uxc-label {
    overflow: hidden;
    margin: 5px;
    min-width: 21px;
    padding: 2px; }
  #uxc-table-balances img {
    max-height: 24px;
    margin-right: 7px; }
  /* Mobile: lock the table to the viewport and let all content wrap so nothing overflows right. */
  /* Balances on mobile: force the card-stack — override the desktop 2-col widths + cell borders that leak in from the global rules above (higher specificity than the card-stack td rule). */
  #uxc-table-balances tbody tr td,
  #uxc-table-balances tbody tr td:first-child,
  #uxc-table-balances tbody tr td:last-child { border: none; width: 100%; }
  #uxc-table-balances td { overflow-wrap: anywhere; white-space: normal; }
  /* Checkouts on mobile: same desktop cell-border leak — clear it so cards are borderless inside. */
  #uxc-table-checkouts tbody tr td,
  #uxc-table-checkouts tbody tr td:first-child,
  #uxc-table-checkouts tbody tr td:last-child { border: none; }
  #uxc-table-balances .uxc-balance { display: block; text-align: right; }
  /* nowrap + no shrink + flex-end: the coin value (icon + name) keeps one line and wraps
     as ONE unit to its own line when it cannot fit beside the long label - squeezing it
     (shrink) broke the name mid-word (Ether/eum) and dropping only the icon below the name.
     As a unit it right-anchors with the icon left of the name (operator 8/23). */
  #uxc-table-balances .uxc-flex { flex-wrap: nowrap; flex-shrink: 0; justify-content: flex-end; }
  /* The name text node shrinks before the icon/badge do (anonymous flex items shrink by
     default), wrapping the name mid-word; keep the crypto value's text on one line. */
  #uxc-table-balances td[data-label="Cryptocurrency"] .uxc-flex { white-space: nowrap; }
  /* A value that lands on its own line under the label gets the same top spacing. */
  #uxc-table-balances td { row-gap: 4px; }


  [data-area="transactions"] > .uxc-nav-wide .uxc-search {
    flex-shrink: 1; }

  #uxc-search-transactions {
    min-width: 140px; }

  .uxc-body {
    padding: 45px 15px 15px 15px !important; }

  .uxc-sidebar, .uxc-sidebar > div {
    display: flex;
    align-items: center;
    justify-content: flex-start; }

  .uxc-sidebar {
    bottom: auto;
    right: 0 !important;
    left: 0 !important;
    height: 32px;
    width: auto;
    border: none !important; }
    .uxc-sidebar > div {
      padding: 10px !important;
      margin: 0; }
      .uxc-sidebar > div.uxc-nav {
        padding-left: 0 !important;
        padding-right: 55px !important;
        display: flex !important;
        justify-content: center !important;
        flex: 1; }
    .uxc-sidebar .uxc-logo {
      display: none; }
    .uxc-sidebar .uxc-logo-icon {
      display: block;
      height: 35px;
      max-height: 35px; }
    .uxc-sidebar .uxc-bottom {
      right: 0 !important;
      left: 0 !important;
      width: auto;
      text-align: center; }
      .uxc-sidebar .uxc-bottom > .uxc-btn {
        margin: 0 auto 5px auto; }

    /* Mobile top bar: one header per page -> [logo | title ... icon-actions | hamburger].
       Logo in its own bordered box; title copied; dashboard store-selector moved in; page actions
       shown as icon-only proxies (see uxcRelocateMobileHeader in admin.js). */
    /* Pin the head as a full-width top bar. Without this, .uxc-sidebar's column+center flex
       shrinks/centers the head to its content, so wide content overflows off-canvas left and
       the action proxy slides under the fixed hamburger. Clear the sidebar's top offset too. */
    .uxc-sidebar { top: calc(var(--uxc-beta-banner-h, 0px) + var(--uxc-mode-banner-h, 0px)) !important; }
    .uxc-admin .uxc-sidebar { top: calc(var(--uxc-beta-banner-h, 0px) + var(--uxc-mode-banner-h, 0px)) !important; }
    .uxc-sidebar > .uxc-sidebar-head { position: fixed !important; top: calc(var(--uxc-beta-banner-h, 0px) + var(--uxc-mode-banner-h, 0px)) !important; left: 0; right: 0; width: 100%; height: 32px; overflow: visible !important; z-index: 999997; align-items: stretch; padding: 0 !important; background: #ffffff; box-sizing: border-box; }
    .uxc-sidebar-head:not(.uxc-ready) { visibility: hidden; }
    .uxc-dark-mode .uxc-sidebar-head { background: #000000; }
    .uxc-nav-open-btn { width: 48px !important; box-sizing: border-box; border-left: 1px solid var(--uxc-border-color, #e6e6e6); border-right: 1px solid var(--uxc-border-color, #e6e6e6); }
    .uxc-sidebar-head > div:first-child { flex: 0 0 auto !important; display: flex; align-items: center; border-left: 1px solid var(--uxc-border-color, #e6e6e6); border-right: 1px solid var(--uxc-border-color, #e6e6e6); padding: 0 6px 0 6px; }
    #uxc-mobile-header-slot { flex: 1 1 0%; min-width: 0; display: flex; align-items: stretch; padding: 0; color: #2b2b2b; }
    .uxc-dark-mode #uxc-mobile-header-slot { color: #fff; }
    #uxc-mobile-header-slot .uxc-mobile-title { flex: 1 1 0%; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; font-weight: 600; display: flex; align-items: center; padding: 0 10px; border-right: 1px solid var(--uxc-border-color, #e6e6e6); }
    .uxc-sidebar-head > .uxc-mobile-action { flex: 0 0 auto !important; align-self: stretch !important; display: flex !important; align-items: center !important; justify-content: center !important; width: 38px !important; height: auto !important; min-height: 0 !important; line-height: 1 !important; padding: 0 !important; box-sizing: border-box; border: none !important; box-shadow: none !important; outline: none !important; background: transparent !important; color: var(--uxc-text-muted, #999) !important; }
    .uxc-sidebar-head > .uxc-mobile-action svg, .uxc-sidebar-head > .uxc-mobile-action i { width: 16px; height: 16px; font-size: 16px; display: block; margin: 0 !important; padding: 0 !important; line-height: 1; opacity: 0.8; position: relative; top: -4px; }
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-filters-transactions"], .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-download-transitions"], .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-filters-checkouts"], .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-checkouts-download"],
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-cmd-search-trigger"], .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-dashboard-create-link"] { border-right: 1px solid var(--uxc-border-color, #e6e6e6) !important; }
    /* Slight, theme-aware hover on the muted action buttons (dark -> lighter via --uxc-hover-bg/--uxc-text-primary; light -> a different color). Placed before the gold rule below so the gold + buttons keep their color on hover. */
    .uxc-sidebar-head > .uxc-mobile-action:hover { background: var(--uxc-hover-bg) !important; color: var(--uxc-text-primary) !important; }
    .uxc-sidebar-head > .uxc-mobile-action:hover svg, .uxc-sidebar-head > .uxc-mobile-action:hover i { opacity: 1; }
    /* Primary action per page (create / save / add / update) is gold; utility buttons (filter / download / upload) stay muted. */
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-request-payment"],
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-create-checkout"],
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-dashboard-create-link"],
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-dashboard-create-payment"],
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-staff-add-header"],
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-save-settings"],
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-save-shop"],
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-lander-new"],
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-balance-refresh"],
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-pos-open"] { color: var(--uxc-accent) !important; }
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-request-payment"] svg,
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-create-checkout"] svg { position: relative !important; top: 1px !important; }   /* !important: the .uxc-btn>svg rule (978, top -2px) outspecifies plain group rules */
    /* Operator 9/4: search icon down 5px total from the generic -4px baseline; create-link icon down 1px (was the -1px group). */
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-cmd-search-trigger"] svg { position: relative !important; top: 0px !important; opacity: 1 !important; }
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-dashboard-create-link"] svg { position: relative !important; top: 0px !important; }
    /* Operator 9/4 (final): mobile trio (search / app drawer / menu) at full ink: black in light theme, white in dark. Gold action buttons keep var(--uxc-accent). */
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-cmd-search-trigger"] { color: var(--uxc-text-primary, #000000) !important; }
    .uxc-sidebar-head > .uxc-nav-open-btn { color: var(--uxc-text-primary, #000000) !important; }
    #uxc-appdrawer-host { --ad-mut: var(--uxc-text-primary, #000000); }
    /* Plus icons: !needed - the generic .uxc-btn>svg rule (top:-2px) outspecifies plain group rules. */
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-dashboard-create-payment"] svg,
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-dashboard-create-link"] svg,
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-request-payment"] svg { position: relative !important; top: -1px !important; }
    /* Checkouts download + upload + balance-refresh icons nudge down 1px (matches the + icon above). */
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-checkouts-download"] svg,
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-checkouts-download"] i,
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-upload-checkouts"] svg,
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-upload-checkouts"] i,
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-balance-refresh"] svg,
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-balance-refresh"] i { position: relative !important; top: 1px !important; }   /* !needed vs the .uxc-btn>svg rule (978) */
    /* Payments download svg 1px above the checkouts pair; checkouts filters glyph 1px below the
       generic -4px baseline (operator 8/23). !important vs the .uxc-btn>svg rule (978). */

    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-download-transitions"] svg { position: relative !important; top: 0 !important; }
    /* Filters funnel svg (now inline, both pages): 1px below the generic -4px baseline (operator 9/4). */
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-filters-transactions"] svg,
    .uxc-sidebar-head > .uxc-mobile-action[data-target="#uxc-filters-checkouts"] svg { position: relative !important; top: -3px !important; }
    .uxc-sidebar-head > .uxc-dashboard-store-slot { flex: 0 0 auto !important; display: flex !important; align-items: center; border: none !important; border-right: 1px solid var(--uxc-border-color, #e6e6e6) !important; padding: 0 !important; margin: 0 !important; }
    .uxc-sidebar-head > .uxc-dashboard-store-slot .uxc-ds-label { max-width: 70px; font-size: 12px; }
    /* Store slot is icon-only in the mobile top bar: show the storefront icon, drop the label + caret. */
    .uxc-sidebar-head > .uxc-dashboard-store-slot .uxc-ds-label,
    .uxc-sidebar-head > .uxc-dashboard-store-slot .uxc-ds-caret { display: none !important; }
    .uxc-sidebar-head > .uxc-dashboard-store-slot .uxc-ds-icon { display: inline-flex !important; width: 18px; height: 18px; color: var(--uxc-text-secondary, #6a6a6a); }
    /* Icon-only cell: keep a finger-sized hit target (was ~22x26). */
    .uxc-sidebar-head > .uxc-dashboard-store-slot .uxc-dashboard-store-trigger { min-width: 38px; min-height: 30px; justify-content: center; padding: 4px 0; }
    /* Avatar dropdown (moved here from the dashboard header on mobile) — a bordered cell left of the hamburger. */
    .uxc-sidebar-head > #uxc-account-menu { flex: 0 0 auto !important; align-self: stretch !important; display: flex !important; align-items: center; justify-content: center; padding: 0 8px !important; margin: 0 !important; border-left: 1px solid var(--uxc-border-color, #e6e6e6) !important; }
    .uxc-sidebar-head #uxc-account-btn { width: 27px; height: 27px; }
    #uxc-account-dropdown { max-width: calc(100vw - 24px) !important; z-index: 10000002 !important; }
    /* One header on mobile: hide the in-content page header / title+desc (actions are proxied into
       the top bar; the dashboard store-selector is moved up). Toolbars (.uxc-nav-wide) stay. */
    [data-area] .uxc-page-header { display: none !important; }

  .uxc-nav > div {
    border: none !important;
    width: 46px;
    height: 32px;
    border-radius: 0; }
    .uxc-nav > div i {
      text-indent: 0;
      margin: auto !important;
      font-size: 25px; }
    .uxc-nav > div span {
      display: none !important; }

  .uxc-mobile-menu {
    position: fixed;
    top: 0;
    right: 0;
    font-size: 18px; }
    .uxc-mobile-menu > i, .uxc-mobile-menu > svg {
      display: block;
      width: 35px;
      height: 40px;
      line-height: 40px;
      border-radius: 0;
      text-align: center;
      padding: 8px; }
    .uxc-mobile-menu > svg {
      color: #000000;
      transition: color 0.4s; }
    .uxc-mobile-menu > div {
      display: none;
      background: #fff;
      padding: 15px;
      position: fixed;
      right: 10px;
      top: 60px;
      box-shadow: 0 4px 14px 0 rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(0, 0, 0, 0.05);
      border-radius: 0;
      text-align: center;
      z-index: 9999995;
      animation: uxc-fade-bottom;
      max-width: fit-content; }
      .uxc-mobile-menu > div .uxc-btn-icon {
        margin: 15px auto 0 auto !important; }
      .uxc-mobile-menu > div .uxc-flex {
        width: 100%;
        max-width: none;
        justify-content: space-between;
        border-radius: 0;
        border: 1px solid var(--uxc-border-color);
        background: #ffffff;
        padding: 10px; }
    .uxc-mobile-menu.uxc-active > i, .uxc-mobile-menu.uxc-active > svg {
      color: var(--uxc-accent); }
    .uxc-mobile-menu.uxc-active > div {
      display: block; }

  /* --- Mobile off-canvas nav drawer (<=768px): .uxc-nav slides in from the right. 2-column grouped button grid with category titles. --- */
  .uxc-nav-action, .uxc-nav-backdrop, .uxc-nav-close { display: none; }
  @media (max-width: 767px) {
    .uxc-sidebar > div.uxc-nav {
      display: grid !important;
      /* min-content rows: an AUTO implicit row mis-sizes a tall full-span submenu wrapper to ~11px
         (its 19 buttons then overflow the row and overlay the tiles below instead of pushing them);
         min-content sizes every row to its content, so the expanded submenu row grows to full height
         and genuinely pushes the rows below it down. Tiles/headers size identically either way. */
      grid-auto-rows: min-content;
      /* equal halves: long labels never inflate a column (u.cash drawer law) */
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
      align-content: start;
      position: fixed; top: calc(var(--uxc-beta-banner-h, 0px) + var(--uxc-mode-banner-h, 0px) + 112px); right: 0; bottom: 34px; width: 321px; box-sizing: border-box;
      background: #ffffff; transform: translateX(100%); transition: transform 0.3s ease;
      z-index: 10000001; overflow-y: auto; padding: 12px 8px 0 !important;
      box-shadow: -4px 0 24px rgba(0,0,0,0.18);
      border-left: 1px solid var(--uxc-border-color, #e6e6e6); border-right: 1px solid var(--uxc-border-color, #e6e6e6);
    }
    .uxc-dark-mode .uxc-sidebar > div.uxc-nav { background: #000000; }
    body.uxc-nav-open .uxc-sidebar > div.uxc-nav,
    body.uxc-nav-open .uxc-sidebar > .uxc-nav-close,
    body.uxc-nav-open .uxc-sidebar > .uxc-mobile-search,
    body.uxc-nav-open .uxc-sidebar > .uxc-drawer-footer { transform: translateX(0); }
    /* Category titles span the full width of the 2-column grid. */
    .uxc-nav > .uxc-nav-group { grid-column: 1 / -1 !important; }
    /* Settings subpage list: in the drawer every section is a full-width BUTTON, one per row -
       the desktop left-list look does not carry over. The wrapper is a 1-column grid with the
       tile gap; every property needs !important (the >div tile rule below outranks the wrapper). */
    .uxc-nav > .uxc-settings-subnav { grid-column: 1 / -1 !important; display: none !important; border: 0 !important; margin: 0 !important; padding: 0 !important; min-height: 0 !important; height: auto !important; width: auto !important; }
    .uxc-nav > .uxc-settings-subnav.uxc-open { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 6px !important; align-content: start !important; align-self: start !important; }
    /* Generic: any submenu whose nav item is open (accordion) opens as the same button list. */
    .uxc-nav > [data-nav-submenu].uxc-open { display: grid !important; grid-column: 1 / -1 !important; grid-template-columns: 1fr 1fr !important; gap: 6px !important; align-content: start !important; align-self: start !important; border: 0 !important; margin: 0 !important; padding: 0 !important; min-height: 0 !important; height: auto !important; width: auto !important; }
    /* The submenu AREA itself paints nothing: the wrapper is a .uxc-nav > div, so the global tile
       hover tint (and the dark-mode twin) would wash the whole region on touch/hover - the
       buttons carry their own borders, the area stays the drawer's plain surface. */
    .uxc-nav > [data-nav-submenu], .uxc-nav > [data-nav-submenu]:hover { background: transparent !important; }
    .uxc-dark-mode .uxc-nav > [data-nav-submenu]:hover { background: transparent !important; }
    /* The buttons: bordered, square corners, centered label - the tile language. The desktop
       chevron ::before and accent border-left are neutralized here only (mobile < 768px). */
    .uxc-nav-subitem { display: flex !important; align-items: center !important; justify-content: center !important; text-align: center !important; width: 100%; box-sizing: border-box; min-height: 36px; padding: 5px 8px; font-size: 12px; line-height: 1.2; color: inherit; background: transparent; border: 1px solid var(--uxc-border-color, #e6e6e6) !important; border-radius: 0 !important; }
    .uxc-nav-subitem::before { content: none !important; margin-right: 0 !important; }
    /* Border-only buttons: no background fill on hover/active either (the global desktop hover
       carries an accent tint - explicit transparent beats it here). */
    .uxc-nav-subitem:hover { background: transparent !important; color: var(--uxc-accent); }
    .uxc-nav-subitem.uxc-active { background: transparent !important; border-color: var(--uxc-text-muted, #999) !important; font-weight: 600; color: inherit; }
    .uxc-dark-mode .uxc-nav-subitem { color: var(--uxc-text-secondary); border-color: var(--uxc-bg-secondary) !important; }
    .uxc-dark-mode .uxc-nav-subitem:hover { color: var(--uxc-accent); }
    .uxc-dark-mode .uxc-nav-subitem.uxc-active { border-color: var(--uxc-bg-secondary) !important; color: var(--uxc-text-primary); }
    /* While its submenu is open in the drawer the tile carries the accent (border + icon + label);
       class-driven, so closing the submenu unhighlights automatically. */
    .uxc-nav > div.uxc-open:not([data-nav-submenu]):not(.uxc-nav-group) { border-color: var(--uxc-accent) !important; }
    .uxc-nav > div.uxc-open:not([data-nav-submenu]):not(.uxc-nav-group) > span,
    .uxc-nav > div.uxc-open:not([data-nav-submenu]):not(.uxc-nav-group) > i { color: var(--uxc-accent) !important; }
    /* Close (top) + footer (bottom) are siblings of .uxc-nav, NOT inside it, so the nav's 10px
       padding can't inset them. They are fixed bars that slide in/out with the drawer (same
       transition + body.uxc-nav-open trigger as .uxc-nav). The nav is offset to sit BETWEEN them
       (top:42px / bottom:48px) so its scrolling content never passes under either bar.
       All three share width:321px + box-sizing:border-box + border-left/right, so the drawer is
       one fully bordered box and the bars line up exactly with the nav (borders never change the
       outer width). */
    .uxc-sidebar > .uxc-nav-close {
      position: fixed; top: calc(var(--uxc-beta-banner-h, 0px) + var(--uxc-mode-banner-h, 0px)); right: 0; width: 321px; height: 42px;
      display: flex !important; align-items: center; justify-content: flex-start; gap: 0;
      padding: 0 !important; box-sizing: border-box;
      color: var(--uxc-text-muted, #999); font-size: 15px;
      background: #ffffff; border-left: 1px solid var(--uxc-border-color, #e6e6e6); border-right: 1px solid var(--uxc-border-color, #e6e6e6); border-bottom: 1px solid var(--uxc-border-color, #e6e6e6);
      box-shadow: -4px 0 24px rgba(0,0,0,0.18);
      transform: translateX(100%); transition: transform 0.3s ease; z-index: 10000002;
    }
    .uxc-dark-mode .uxc-sidebar > .uxc-nav-close { background: #000000; }
    /* [Dashboard | Sign Out] bar (u.cash navdrawer parity): slides with the drawer, sits
       between the head and the search row; cells are equal halves with a vertical divider. */
    .uxc-sidebar > .uxc-drawer-dashrow {
      position: fixed; top: calc(var(--uxc-beta-banner-h, 0px) + 42px); right: 0; width: 321px; height: 40px;
      display: flex !important; box-sizing: border-box; padding: 0; margin: 0;
      background: #ffffff; border-left: 1px solid var(--uxc-border-color, #e6e6e6); border-right: 1px solid var(--uxc-border-color, #e6e6e6); border-bottom: 1px solid var(--uxc-border-color, #e6e6e6);
      transform: translateX(100%); transition: transform 0.3s ease; z-index: 10000002;
    }
    body.uxc-nav-open .uxc-sidebar > .uxc-drawer-dashrow { transform: translateX(0); }
    .uxc-dark-mode .uxc-sidebar > .uxc-drawer-dashrow { background: #000000; }
    .uxc-drawer-dashcell {
      flex: 1 1 0; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
      min-width: 0; height: 40px; padding: 0 12px; margin: 0; border: 0; background: transparent;
      color: var(--uxc-text-primary, #1a1a1a); font-family: inherit; font-size: 12px; font-weight: 600; letter-spacing: .02em;
      text-transform: uppercase; text-decoration: none; cursor: pointer; white-space: nowrap; box-sizing: border-box;
    }
    .uxc-drawer-dashcell svg { flex: none; }
    .uxc-drawer-dashcell + .uxc-drawer-dashcell { border-left: 1px solid var(--uxc-border-color, #e6e6e6); }
    .uxc-drawer-dashcell:hover { background: var(--uxc-hover-bg, rgba(0,0,0,0.05)); }
    /* Profile (avatar + email) fills the header; the X is a 42px square close button at the
       right edge with a left border separating it from the profile. */
    .uxc-sidebar > .uxc-nav-close > .uxc-icon-close { flex: 0 0 42px; align-self: stretch; margin-left: auto; display: flex; align-items: center; justify-content: center; border-left: 1px solid var(--uxc-border-color, #e6e6e6); cursor: pointer; }
    .uxc-sidebar > .uxc-nav-close > .uxc-drawer-profile { display: flex; align-items: center; gap: 8px; min-width: 0; flex: 1 1 auto; align-self: stretch; padding: 0 12px; border: 0; margin: 0; text-decoration: none; color: inherit; }
    .uxc-sidebar > .uxc-nav-close > .uxc-drawer-profile:hover, .uxc-sidebar > .uxc-nav-close > .uxc-icon-close:hover { background: var(--uxc-hover-bg, rgba(0,0,0,0.04)); }
    .uxc-sidebar > .uxc-nav-close .uxc-drawer-profile > .uxc-account-avatar { width: 28px !important; height: 28px !important; min-width: 28px; flex: 0 0 28px; }
    /* Category titles (like the desktop sidebar) — compact label row, NO separator line. */
    .uxc-nav > .uxc-nav-group { width: 100%; padding: 8px 2px 0 !important; margin: 4px 0 0 !important; font-size: 9px; line-height: 12px; height: auto !important; min-height: 0 !important; text-transform: uppercase; letter-spacing: .04em; font-weight: 600; color: var(--uxc-text-primary); }
    .uxc-nav .uxc-nav-group::after { display: none !important; }
    /* Buttons: bordered, square corners, centered icon over label, spaced by the grid gap. */
    .uxc-nav > div:not(.uxc-nav-group):not(.uxc-nav-close):not(.uxc-drawer-profile):not(.uxc-drawer-footer):not(.uxc-drawer-credit):not([data-nav-submenu]) {
      width: auto !important;
      box-sizing: border-box;
      min-height: 40px !important; border: 1px solid var(--uxc-border-color, #e6e6e6) !important; border-radius: 0 !important;
      margin: 0 !important; padding: 6px 10px !important;
      display: flex; flex-direction: row; align-items: center; justify-content: space-between !important; gap: 8px; text-align: center;
    }
    .uxc-nav > div#dashboard { display: none !important; }   /* lives in the dashrow now; its cell proxy-taps it */
    .uxc-nav > div:not(.uxc-nav-group):not(.uxc-nav-close):not(.uxc-drawer-profile):not(.uxc-drawer-footer):not(.uxc-drawer-credit):not([data-nav-submenu]) > i { margin: 0 !important; width: 20px; height: 20px; flex: 0 0 20px; }
    .uxc-nav > div:not(.uxc-nav-group):not(.uxc-nav-close):not(.uxc-drawer-profile):not(.uxc-drawer-footer):not(.uxc-drawer-credit):not([data-nav-submenu]) > i svg { width: 20px; height: 20px; }
    .uxc-nav > div:not(.uxc-nav-group):not(.uxc-nav-close):not(.uxc-drawer-profile):not(.uxc-drawer-footer):not(.uxc-drawer-credit):not([data-nav-submenu]) span { display: block !important; font-size: 12px; font-weight: 600; line-height: 1.2; text-align: right; flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .uxc-nav > div:not(.uxc-nav-group):not(.uxc-nav-close):not(.uxc-drawer-profile):not(.uxc-drawer-footer):not(.uxc-drawer-credit):not([data-nav-submenu]):hover { background: var(--uxc-hover-bg, rgba(0,0,0,0.04)); }
    .uxc-nav > div.uxc-active:not(.uxc-nav-group):not(.uxc-nav-close):not(.uxc-drawer-profile):not(.uxc-drawer-footer):not(.uxc-drawer-credit):not([data-nav-submenu]) { background: rgba(0,0,0,0.06); border-color: var(--uxc-text-muted, #999); font-weight: 600; }
    .uxc-nav > div.uxc-active:not(.uxc-nav-group):not(.uxc-nav-close):not(.uxc-drawer-profile):not(.uxc-drawer-footer):not(.uxc-drawer-credit):not([data-nav-submenu]):hover { background: rgba(0,0,0,0.08); }
    .uxc-dark-mode .uxc-nav > div.uxc-active:not(.uxc-nav-group):not(.uxc-nav-close):not(.uxc-drawer-profile):not(.uxc-drawer-footer):not(.uxc-drawer-credit):not([data-nav-submenu]):hover { background: rgba(255,255,255,0.12); }
    /* Open-submenu border highlight: same :not chain as the active-tile rule (ties specificity)
       and LATER in the file, so an open tile carries the accent border even when it is also the
       active area's tile. */
    .uxc-nav > div.uxc-open:not(.uxc-nav-group):not(.uxc-nav-close):not(.uxc-drawer-profile):not(.uxc-drawer-footer):not(.uxc-drawer-credit):not([data-nav-submenu]) { border-color: var(--uxc-accent) !important; }
    /* Theme + Logout moved to the avatar dropdown/footer; Account stays visible in the drawer nav. */
    .uxc-nav > #uxc-theme-toggle, .uxc-nav > .uxc-nav-logout { display: none !important; }
    .uxc-nav > #account { display: flex !important; }
    .uxc-sidebar > .uxc-nav-backdrop { display: none; position: fixed; inset: 0; background: rgba(0,0,0,0.4); z-index: 10000000; }
    body.uxc-nav-open .uxc-sidebar > .uxc-nav-backdrop { display: block; }

    /* Hide the old top-bar avatar dropdown on mobile; its contents now live in the drawer. */
    .uxc-sidebar-head > #uxc-account-menu { display: none !important; }
    /* App drawer: fixed-width button (not flex:1-stretched by the >div rule), just LEFT of the menu (hamburger). */
    .uxc-sidebar-head > #uxc-appdrawer-host { flex: 0 0 auto !important; order: 5; }
    .uxc-sidebar-head > .uxc-nav-open-btn { order: 6; }
    /* Push the content below the gold beta-banner on mobile (was margin-top:0 -> dashboard-header overlapped the banner -> gold flash on resize). */
    .uxc-main { margin-top: var(--uxc-beta-banner-h, 0px); }
    /* Una FAB sits at z-index 2147483647 (max) so it floats OVER the open mobile nav drawer. Hide it
       while the off-canvas nav is open (body.uxc-nav-open); it returns when the nav closes. */
    body.uxc-nav-open #una-fab-root { display: none !important; }
    /* Profile card: full-width row, avatar left + email/role right. */
    .uxc-nav > .uxc-drawer-profile {
      width: auto !important;
      display: flex !important; align-items: center; gap: 10px;
      grid-column: 1 / -1 !important;
      padding: 8px 10px !important; margin: 0 0 4px !important;
      border: 1px solid var(--uxc-border-color, #e6e6e6) !important; border-radius: 0 !important;
    }
    .uxc-drawer-profile > .uxc-account-avatar { width: 36px !important; height: 36px !important; min-width: 36px; flex: 0 0 36px; border-radius: 50%; object-fit: cover; }
    .uxc-drawer-profile .uxc-drawer-profile-meta { display: flex; flex-direction: column; justify-content: center; gap: 2px; min-width: 0; flex: 1 1 auto; overflow: hidden; }
    .uxc-drawer-profile .uxc-account-email { display: block; font-size: 13px; font-weight: 600; line-height: 1.25; color: var(--uxc-text-primary, #1a1a1a); max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .uxc-drawer-profile .uxc-account-role { display: block; font-size: 11px; line-height: 1.25; color: var(--uxc-text-muted, #999); text-transform: capitalize; }
    /* Credit row: full-width link -> #account (Add Funds). */
    /* Credit tile (dollar icon over the value) reuses the nav-tile rule; force it visible on mobile (its desktop default is display:none). The value span matches the nav-tile label span (11px, label color via .uxc-nav > div > span, weight 400). */
    .uxc-nav > .uxc-drawer-credit { display: block !important; grid-column: 1 / -1 !important; flex-direction: column; width: auto !important; height: auto !important; min-height: 0 !important; max-height: none !important; line-height: normal !important; font-size: 13px !important; border: 0 !important; padding: 0 !important; margin: 0 0 4px !important; background: transparent !important; cursor: pointer; overflow: visible; }
    .uxc-bal-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 2px 2px 2px; }
    .uxc-bal-k { font-size: 9px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: var(--uxc-text-secondary, #6b6b6b); }
    .uxc-bal-topup { all: unset; cursor: pointer; display: flex; align-items: center; gap: 4px; height: 24px; padding: 0; color: var(--uxc-text-secondary, #6b6b6b); }
    .uxc-bal-topup:hover, .uxc-bal-topup:hover .uxc-bal-k { color: var(--uxc-accent, #a37a29); }
    .uxc-bal-card { display: flex; flex-direction: column; padding: 5px 12px 7px; border: 1px solid var(--uxc-border-color, #e6e6e6) !important; border-radius: 7px !important; background: transparent; }
    .uxc-bal-card:hover { border-color: var(--uxc-accent, #a37a29) !important; }
    .uxc-bal-row { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin-top: 4px; }
    .uxc-bal-row-ucash { border-top: 1px solid var(--uxc-border-color, #e6e6e6); margin-top: 5px; padding-top: 6px; }
    .uxc-bal-lbl { font-size: 11px; font-weight: 500; color: var(--uxc-text-primary, #1a1a1a); white-space: nowrap; }
    .uxc-bal-val { font-size: 13px; font-weight: 600; color: var(--uxc-text-primary, #1a1a1a); text-align: right; font-variant-numeric: tabular-nums; }
    /* Footer bar (bottom): full-width, fixed at the drawer's bottom edge, slides with the drawer.
       Sign out fills; Settings + Theme sit at the far right. */
    .uxc-sidebar > .uxc-drawer-footer {
      position: fixed; right: 0; bottom: 0; width: 321px; height: 34px;
      display: flex !important; align-items: center;
      background: #ffffff; border-top: 1px solid var(--uxc-border-color, #e6e6e6);
      border-left: 1px solid var(--uxc-border-color, #e6e6e6); border-right: 1px solid var(--uxc-border-color, #e6e6e6);
      box-shadow: -4px 0 24px rgba(0,0,0,0.18);
      padding: 0 !important; box-sizing: border-box;
      transform: translateX(100%); transition: transform 0.3s ease; z-index: 10000002;
    }
    .uxc-dark-mode .uxc-sidebar > .uxc-drawer-footer { background: #000000; }
    /* u.cash foot law: equal centered cells with vertical dividers - [icon Language: XX v | icon Theme: X];
       hover = gold text, never a background wash (nd-lang/theme-toggle parity). */
    .uxc-drawer-footer > .uxc-drawer-foot-item { flex: 1 1 0; justify-content: center; min-width: 0; font-size: 12px; font-weight: 600; }
    .uxc-drawer-foot-item { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 8px 10px; border: 0; background: transparent; color: var(--uxc-text-primary, #333); font: inherit; font-size: 13px; cursor: pointer; text-decoration: none; }
    .uxc-drawer-foot-item:hover { background: transparent; color: var(--uxc-accent); }
    .uxc-drawer-footer > .uxc-drawer-foot-item + .uxc-drawer-foot-item { border-left: 1px solid var(--uxc-border-color, #e6e6e6); }
    .uxc-drawer-footer .uxc-foot-k { color: var(--uxc-text-secondary, #6b6b6b); font-weight: 600; }
    .uxc-drawer-footer .uxc-theme-v { color: var(--uxc-text-primary, #1a1a1a); font-weight: 600; }
    .uxc-drawer-lang { cursor: pointer; min-width: 0; }
    .uxc-drawer-footer .uxc-drawer-lang-v { color: var(--uxc-text-primary, #1a1a1a); font-weight: 600; max-width: 92px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .uxc-drawer-lang svg, .uxc-drawer-footer .uxc-drawer-theme svg { flex: none; display: block; }
    .uxc-drawer-lang-pop { position: fixed; right: 4px; bottom: 38px; width: 210px; max-height: min(420px, 60vh); overflow-y: auto; background: var(--uxc-card-bg, #ffffff); border: 1px solid var(--uxc-border-color, #e6e6e6); border-radius: 10px; box-shadow: 0 12px 32px rgba(0,0,0,0.22); padding: 6px; box-sizing: border-box; z-index: 10000003; }
    .uxc-drawer-lang-pop[hidden] { display: none; }
    .uxc-drawer-lang-opt { display: block; width: 100%; text-align: left; padding: 9px 10px; border: 0; border-radius: 6px; background: transparent; color: var(--uxc-text-primary, #1a1a1a); font: inherit; font-size: 13px; cursor: pointer; }
    .uxc-drawer-lang-opt:hover { background: var(--uxc-hover-bg, rgba(0,0,0,0.05)); }
    .uxc-drawer-lang-cur { color: var(--uxc-accent); font-weight: 600; }
    .uxc-dark-mode .uxc-drawer-lang-pop { background: #000000; border-color: #333333; }
    .uxc-dark-mode .uxc-drawer-lang-opt { color: #e4e4e4; }
    .uxc-dark-mode .uxc-drawer-lang-opt:hover { background: rgba(255,255,255,0.08); }
  }

  .uxc-admin main > div > .uxc-loading {
    bottom: -20px; }

  .uxc-input input, .uxc-input select, .uxc-input textarea {
    font-size: 15px; }

  .uxc-input {
    display: block; }
    .uxc-input span {
      font-size: 12px;
      max-width: 100% !important;
      width: auto !important;
      max-width: none; }
    .uxc-input > div {
      padding-right: 0;
      width: auto; }
      .uxc-input > div p {
        font-size: 13px;
        line-height: 16px; }
    .uxc-input .uxc-setting-input {
      margin-top: 15px; }
    /* Checkbox setting rows stay on one line: label left, checkbox right-aligned
       (override the mobile .uxc-input{display:block} stack + the margin-top above). */
    .uxc-input[data-type="checkbox"] {
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: nowrap; }
      .uxc-input[data-type="checkbox"] .uxc-setting-input {
        margin-top: 0; }

  .uxc-flex .uxc-input + .uxc-input {
    margin-top: 30px !important; }

  #uxc-checkouts-form .uxc-flex .uxc-input + .uxc-input {
    margin-top: 50px !important; }

  #uxc-checkouts-form .uxc-flex {
    flex-direction: column;
    align-items: stretch; }
  #uxc-checkouts-form .uxc-flex .uxc-input + .uxc-input {
    margin-left: 0 !important;
    margin-top: 15px !important; }

  [data-checkout-id] #uxc-checkout-embed-code, [data-checkout-id] #uxc-checkout-payment-link {
    display: block; }

  [data-area="balances"] > div:first-child,
  [data-area="balance"] > div:first-child {
    text-align: center;
    padding-top: 15px; }

  [data-type="multi-input"] > div {
  }

  [data-area="settings"] {
    padding-bottom: 80px; }

  .uxc-color-cnt i {
    right: 12px; }
  .uxc-color-cnt:after {
    right: 1px; }

  #uxc-checkout-embed-code div, #uxc-checkout-payment-link div {
    width: auto; }

  #uxc-version {
    margin-top: 13px; }

  .uxc-rtl .uxc-mobile-menu {
    left: 0;
    right: auto; }
    .uxc-rtl .uxc-mobile-menu > div {
      left: 10px;
      right: auto; }

  #uxc-table-transactions .uxc-td-amount .uxc-title {
    margin: 0; }
  #uxc-table-transactions .uxc-td-amount div + div {
    margin: 0 0 0 15px; }
  #uxc-table-transactions .uxc-not-found {
    margin: 0 auto 20px; }

  #uxc-checkouts-form .uxc-input, #uxc-checkouts-form .uxc-flex {
    border-top: none !important; }
  #uxc-checkouts-form #checkout-downloads {
    padding-right: 20px; }

  #uxc-checkout-shortcode i {
    margin-top: 32px; }

  .uxc-login,
  .uxc-cloud-box,
  .uxc-box {
    border: none; }

  .uxc-login .uxc-input, .uxc-cloud-box .uxc-input {
    margin-top: 15px; }

  #uxc-balance-total {
    font-size: 22px; margin-top: 3px; }
    #uxc-balance-total + div {
      font-size: 18px; }

  [data-area="balances"] > div:first-child,
  [data-area="balance"] > div:first-child {
    border: 1px solid;
    background: none;
    border-radius: 0;
    text-align: center;
    padding: 15px; }

  .uxc-nav-filters {
    padding: 0 0 15px;
    border-bottom: 1px solid var(--uxc-border-color); }
    .uxc-nav-filters .uxc-input {
      display: flex;
      justify-content: start;
      gap: 10px;
      margin: 15px 15px 0; }
    .uxc-nav-filters-title {
      display: block;
      font-size: 12px;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: .5px;
      color: var(--uxc-text-secondary, #6b6b6b);
      padding: 12px 15px 0; }
    /* Mobile: each filter is a small uppercase label + inline chip buttons (no dropdown). */
    .uxc-nav-filters.uxc-active {
      display: block; }
    .uxc-nav-filters > .uxc-select {
      display: block;
      height: auto;
      min-height: 0;
      margin: 15px 15px 0; }
      .uxc-nav-filters > .uxc-select p {
        display: block;
        font-size: 11px !important;
        line-height: 1 !important;
        text-transform: uppercase;
        letter-spacing: .5px;
        color: var(--uxc-text-muted, #999);
        padding: 0 0 6px;
        max-width: 100%;
        cursor: default; }
        .uxc-nav-filters > .uxc-select p:before { content: none !important; }
        .uxc-nav-filters > .uxc-select p:hover, .uxc-nav-filters > .uxc-select p:hover span { color: inherit; }
      .uxc-nav-filters > .uxc-select ul {
        display: flex !important;
        flex-wrap: wrap;
        gap: 6px;
        position: static !important;
        max-height: 132px;
        overflow-y: auto;
        padding: 0 !important;
        margin: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        z-index: auto !important;
        -webkit-overflow-scrolling: touch; }
        .uxc-nav-filters > .uxc-select ul li {
          display: block !important;
          flex: 0 0 auto;
          padding: 6px 12px;
          border: 1px solid var(--uxc-border-color);
          font-size: 13px !important;
          line-height: 16px; }
          .uxc-nav-filters > .uxc-select ul li.uxc-active {
            background: var(--uxc-accent);
            border-color: var(--uxc-accent);
            color: #fff; }
          /* Dark theme: active chip text goes dark (gold bg), matching .uxc-una-seg-opt.active. */
          .uxc-dark-mode .uxc-nav-filters > .uxc-select ul li.uxc-active,
          .uxc-dark-mode .uxc-nav-filters > .uxc-select ul li.uxc-active:hover {
            color: #1a1a1a; }

    /* Downloads card mirrors the filter card on mobile: block card (title + label rows +
       wrapping chips, full-width CSV button) instead of the centered desktop row. */
    .uxc-download-filters.uxc-active {
      display: block; }
    .uxc-download-presets {
      margin: 15px 15px 0; }
    .uxc-download-label {
      flex-basis: 100%;
      margin: 0 0 6px;
      font-size: 11px;
      line-height: 1;
      text-transform: uppercase;
      letter-spacing: .5px;
      color: var(--uxc-text-muted, #999); }
    .uxc-download-filters > .uxc-select {
      display: block;
      height: auto;
      min-height: 0;
      margin: 15px 15px 0; }
      .uxc-download-filters > .uxc-select p {
        display: block;
        font-size: 11px !important;
        line-height: 1 !important;
        text-transform: uppercase;
        letter-spacing: .5px;
        color: var(--uxc-text-muted, #999);
        padding: 0 0 6px;
        max-width: 100%;
        cursor: default; }
        .uxc-download-filters > .uxc-select p:before { content: none !important; }
      .uxc-download-filters > .uxc-select ul {
        display: flex !important;
        flex-wrap: wrap;
        gap: 6px;
        position: static !important;
        max-height: 132px;
        overflow-y: auto;
        padding: 0 !important;
        margin: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        z-index: auto !important;
        -webkit-overflow-scrolling: touch; }
        .uxc-download-filters > .uxc-select ul li {
          display: block !important;
          flex: 0 0 auto;
          padding: 6px 12px;
          border: 1px solid var(--uxc-border-color);
          font-size: 13px !important;
          line-height: 16px; }
          .uxc-download-filters > .uxc-select ul li.uxc-active {
            background: var(--uxc-accent);
            border-color: var(--uxc-accent);
            color: #fff; }
          .uxc-dark-mode .uxc-download-filters > .uxc-select ul li.uxc-active,
          .uxc-dark-mode .uxc-download-filters > .uxc-select ul li.uxc-active:hover {
            color: #1a1a1a; }
    .uxc-download-filters .uxc-btn {
      display: block;
      width: calc(100% - 30px);
      box-sizing: border-box;
      margin: 15px 15px 0; }

  input.uxc-filter-date, input.uxc-filter-date-2 {
    flex: 1 1 0;
    min-width: 0;
    width: auto;
    text-align: left; }

  [data-area="analytics"] .uxc-nav-wide > .uxc-flex {
    width: 100%; }
  [data-area="analytics"] .uxc-nav-filters:not(.uxc-active) {
    display: none; }
  [data-area="analytics"] #uxc-filters {
    display: block;
    margin-left: auto; }

  .uxc-cloud-disabled:after {
    content: attr(data-description);
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    background-color: #ffffff;
    color: #000000;
    padding: 8px 12px;
    font-size: 13px;
    white-space: normal;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
    margin-bottom: 8px;
    z-index: 1000; }

  .uxc-cloud-disabled:hover:after {
    opacity: 1;
    visibility: visible; }

  .uxc-dark-mode .uxc-mobile-menu > div {
    border: 1px solid var(--uxc-border-color); } }
@media (max-width: 470px) {
  .uxc-nav > div {
    width: 40px; } }
@media (max-width: 400px) {
  .uxc-nav > div {
    width: 40px; } }
@media (max-width: 440px) {
  .uxc-sidebar > div {
    padding: 10px 0 10px 20px !important; }
  .uxc-sidebar .uxc-logo-icon {
    height: 30px;
    max-height: 30px; }
  .uxc-nav > div i {
    font-size: 18px !important; }
  .uxc-nav > div i svg {
    width: 24px;
    height: 24px; }
  .uxc-nav i.uxc-icon-shopping-cart svg {
    width: 20px;
    height: 20px; }
  .uxc-nav > div span {
    font-size: 12px; }
  .uxc-sidebar .uxc-bottom .uxc-btn {
    font-size: 11px; }
  .uxc-mobile-menu > svg {
    width: 32px;
    height: 36px; } }
@media (max-width: 395px) {
  .uxc-nav > div {
    width: 38px; } }
@media (max-width: 375px) {
  .uxc-nav > div {
    width: 33px; }
  .uxc-nav > div i {
    font-size: 20px; } }
@media (max-width: 340px) {
  .uxc-nav > div {
    width: 30px; } }
@media (max-width: 320px) {
  .uxc-nav > div {
    width: 28px; }
  .uxc-nav > div i {
    font-size: 18px; }
  .uxc-mobile-menu > svg {
    width: 32px;
    height: 36px; } }
@media (max-width: 250px) {
  .uxc-nav > div {
    width: 22px; }
  .uxc-nav > div i {
    font-size: 14px !important; } }
@media (max-width: 290px) {
  .uxc-nav > div {
    width: 22px; }
  .uxc-nav > div i {
    font-size: 14px !important; }
  .uxc-nav > div i svg {
    width: 16px;
    height: 16px; }
  .uxc-nav i.uxc-icon-shopping-cart svg {
    width: 14px;
    height: 14px; } }
@media (max-width: 305px) {
  .uxc-nav > div {
    width: 26px; }
  .uxc-nav > div i {
    font-size: 16px !important; }
  .uxc-nav > div i svg {
    width: 18px;
    height: 18px; }
  .uxc-nav i.uxc-icon-shopping-cart svg {
    width: 16px;
    height: 16px; } }
@media (max-width: 295px) {
  .uxc-nav > div {
    width: 23px; } }
@media (max-width: 275px) {
  .uxc-nav > div {
    width: 21px; } }

/*# sourceMappingURL=admin.css.map */

/*
==========================================================
DARK THEME
==========================================================
*/

/* Dark mode CSS variables for dedicated dark palette */
.uxc-dark-mode {
  --uxc-bg-primary: #1a1a1a;
  --uxc-bg-secondary: #242424;
  --uxc-bg-tertiary: #2e2e2e;
  --uxc-text-primary: #e4e4e4;
  --uxc-text-secondary: #b0b0b0;
  --uxc-text-muted: #8a8a8a;
  --uxc-border-color: #3d3d3d;
  --uxc-accent: #d4a84b;
  --uxc-accent-rgb: 212, 168, 75;
  --uxc-error: #e57373;
  --uxc-success: #66bb6a;
  --uxc-warning: #ffd54f;
  --uxc-hover-bg: #383838;
  --uxc-input-bg: #2a2a2a;
  --uxc-card-bg: #242424;
  --uxc-shadow: rgba(0, 0, 0, 0.3);
}

/* Dark mode: the class lives on <html>, so target body as a descendant. */
.uxc-dark-mode body {
  color: var(--uxc-text-primary);
}

/* Target html element with dark mode class */
html.uxc-dark-mode {
  background-color: #000000;
}

.uxc-dark-mode .uxc-main,
.uxc-dark-mode .uxc-box,
.uxc-dark-mode .uxc-admin {
  color: var(--uxc-text-primary);
}

.uxc-dark-mode .uxc-sidebar {
  background: #000000;
  border-right-color: var(--uxc-border-color);
}

.uxc-dark-mode .uxc-nav > div { color: var(--uxc-text-secondary); border-color: var(--uxc-bg-secondary); }
.uxc-dark-mode .uxc-nav > div:hover { color: var(--uxc-text-primary); border-color: var(--uxc-bg-secondary); }
.uxc-dark-mode .uxc-nav > div.uxc-active { color: var(--uxc-text-primary); border-color: var(--uxc-bg-secondary); }

.uxc-dark-mode .uxc-input span,
.uxc-dark-mode .uxc-title {
  color: var(--uxc-text-primary);
}

.uxc-dark-mode .uxc-text {
  color: var(--uxc-text-secondary);
}

.uxc-dark-mode .uxc-input input,
.uxc-dark-mode .uxc-input select,
.uxc-dark-mode .uxc-input textarea {
  background-color: transparent;
  border-color: var(--uxc-border-color);
  color: var(--uxc-text-primary); }

.uxc-dark-mode .uxc-input select option {
  background-color: #000000;
  color: #ffffff; }

.uxc-dark-mode .uxc-input input:focus,
.uxc-dark-mode .uxc-input select:focus,
.uxc-dark-mode .uxc-input textarea:focus,
.uxc-dark-mode .uxc-input input.uxc-focus,
.uxc-dark-mode .uxc-input select.uxc-focus,
.uxc-dark-mode .uxc-input textarea.uxc-focus {
  border-color: var(--uxc-accent);
  background-color: var(--uxc-bg-tertiary);
  color: var(--uxc-text-primary);
}

/* Disabled select elements in dark mode */
.uxc-dark-mode .uxc-input select:disabled,
.uxc-dark-mode .uxc-input select[disabled="true"],
.uxc-dark-mode select:disabled,
.uxc-dark-mode select[disabled="true"] {
  background-color: var(--uxc-bg-secondary);
  color: var(--uxc-text-muted);
  border-color: var(--uxc-border-color);
  opacity: 0.6;
}

/* Cloud disabled elements in dark mode */
html.uxc-dark-mode .uxc-cloud-disabled:after,
body.uxc-dark-mode .uxc-cloud-disabled:after {
  background-color: #000000 !important;
  color: #ffffff !important;
}

.uxc-dark-mode .uxc-cloud-disabled select {
  background-color: var(--uxc-bg-secondary);
  color: var(--uxc-text-muted);
  border-color: var(--uxc-border-color);
  opacity: 0.6;
}


.uxc-dark-mode .uxc-table th {
  color: var(--uxc-text-primary);
  border-top-color: var(--uxc-border-color);
  border-bottom-color: var(--uxc-border-color);
  border-left-color: var(--uxc-border-color);
  border-right-color: var(--uxc-border-color);
}
.uxc-dark-mode .uxc-table th:first-child {
  border-right: none;
}
.uxc-dark-mode .uxc-table th:last-child {
  border-left: none;
}
.uxc-dark-mode .uxc-table th:not(:first-child):not(:last-child) {
  border-left: none;
  border-right: none;
}

.uxc-dark-mode .uxc-table tr:hover td {
  background-color: transparent;
  border-color: var(--uxc-accent) !important;
  color: var(--uxc-accent);
}

.uxc-dark-mode #uxc-table-transactions tbody td {
  border-color: var(--uxc-border-color);
}

.uxc-dark-mode #uxc-table-balances tbody tr td {
  border-top-color: var(--uxc-border-color);
  border-bottom-color: var(--uxc-border-color);
}
.uxc-dark-mode #uxc-table-balances tbody tr td:first-child {
  border-left-color: var(--uxc-border-color);
}
.uxc-dark-mode #uxc-table-balances tbody tr td:last-child {
  border-right-color: var(--uxc-border-color);
}

.uxc-dark-mode #uxc-table-checkouts tbody tr td {
  border-top-color: var(--uxc-border-color);
  border-bottom-color: var(--uxc-border-color);
}
.uxc-dark-mode #uxc-table-checkouts tbody tr td:first-child {
  border-left-color: var(--uxc-border-color);
}
.uxc-dark-mode #uxc-table-checkouts tbody tr td:last-child {
  border-right-color: var(--uxc-border-color);
}

.uxc-dark-mode .uxc-select {
  color: var(--uxc-text-primary);
}

.uxc-dark-mode .uxc-select ul {
  background-color: var(--uxc-bg-secondary);
  box-shadow: 0 4px 14px 0 var(--uxc-shadow);
}

.uxc-dark-mode .uxc-select ul li {
  color: var(--uxc-text-primary);
}

.uxc-dark-mode .uxc-select ul li:hover,
.uxc-dark-mode .uxc-select ul li:hover .uxc-label {
  background-color: var(--uxc-accent);
  color: #fff;
}

.uxc-dark-mode .uxc-select p:hover,
.uxc-dark-mode .uxc-select p:hover span {
  color: var(--uxc-accent);
}

.uxc-dark-mode .uxc-btn {
  background-color: transparent;
  color: var(--uxc-accent);
  border-color: var(--uxc-accent);
}

.uxc-dark-mode #uxc-save-settings {
  background: transparent; }

.uxc-dark-mode .uxc-mobile-menu > div .uxc-flex {
  background: #000000;
  border-color: var(--uxc-border-color);
  padding: 10px; }

.uxc-dark-mode .uxc-btn:hover {
  background-color: transparent;
  color: #fff;
  border-color: var(--uxc-border-color);
}

.uxc-dark-mode .uxc-btn.uxc-btn-border {
  background: none;
  border-color: var(--uxc-border-color);
  color: var(--uxc-text-secondary);
}

.uxc-dark-mode .uxc-btn.uxc-btn-border:hover,
.uxc-dark-mode .uxc-btn.uxc-btn-border:active {
  color: #fff;
  border-color: var(--uxc-border-color);
}

.uxc-dark-mode .uxc-btn-icon {
  color: var(--uxc-text-primary);
  border-color: transparent;
}

.uxc-dark-mode .uxc-btn-icon:hover {
  color: var(--uxc-accent);
}

.uxc-dark-mode .uxc-link,
.uxc-dark-mode .uxc-link:hover,
.uxc-dark-mode .uxc-underline:hover {
  color: #ffffff;
}

.uxc-dark-mode .uxc-underline:after {
  background-color: var(--uxc-border-color);
}

.uxc-dark-mode .uxc-underline:hover:after {
  background-color: var(--uxc-accent);
}

.uxc-dark-mode .uxc-info-table td {
  color: var(--uxc-text-secondary);
  border-bottom-color: var(--uxc-border-color);
}

.uxc-dark-mode .uxc-info-table td:first-child {
  color: var(--uxc-text-muted);
}

.uxc-dark-mode .uxc-card {
  border-color: var(--uxc-border-color);
}

.uxc-dark-mode .uxc-card:hover {
  border-color: var(--uxc-accent);
  box-shadow: 0 4px 14px 0 var(--uxc-shadow);
}

.uxc-dark-mode .uxc-card-title {
  color: var(--uxc-text-primary);
  border-bottom-color: var(--uxc-border-color);
}

.uxc-dark-mode .uxc-label {
  color: var(--uxc-accent);
  border-color: var(--uxc-accent);
}

.uxc-dark-mode .uxc-toolip {
  background-color: var(--uxc-text-primary);
  color: var(--uxc-bg-primary) !important;
}

.uxc-dark-mode .uxc-toolip:after {
  border-color: var(--uxc-text-primary) transparent transparent;
}

.uxc-dark-mode #uxc-lightbox {
  background-color: rgba(0, 0, 0, 0.95);
}

.uxc-dark-mode #uxc-lightbox > div {
  background-color: #000;
  border: 1px solid var(--uxc-border-color);
  box-shadow: 0 4px 14px 0 var(--uxc-shadow);
}

.uxc-dark-mode #uxc-lightbox-loading {
  background-color: rgba(26, 29, 46, 0.85);
}

.uxc-dark-mode .uxc-scrollbar::-webkit-scrollbar-track {
  background: rgba(45, 50, 80, 0.5);
  border-radius: 0;
}

.uxc-dark-mode .uxc-scrollbar::-webkit-scrollbar-thumb {
  background: var(--uxc-accent);
  box-shadow: 0 1px 3px rgba(var(--uxc-accent-rgb), 0.4);
}

.uxc-dark-mode .uxc-scrollbar::-webkit-scrollbar-thumb:hover {
  background: color-mix(in srgb, var(--uxc-accent), #fff 18%);
  box-shadow: 0 1px 5px rgba(var(--uxc-accent-rgb), 0.6);
}

.uxc-dark-mode .uxc-search i {
  color: var(--uxc-text-muted);
}

.uxc-dark-mode .uxc-search input:focus + input + i {
  color: var(--uxc-accent);
}

.uxc-dark-mode .uxc-bottom {
  border-top-color: var(--uxc-border-color);
}
.uxc-sidebar .uxc-bottom > .uxc-btn {
  background: #fff;
}
.uxc-dark-mode .uxc-sidebar .uxc-bottom > .uxc-btn {
  background: #000;
}

.uxc-dark-mode .uxc-input > div p,
.uxc-dark-mode .uxc-input > div p a {
  color: var(--uxc-text-secondary);
}

.uxc-dark-mode .uxc-nav-filters {
  border-bottom-color: var(--uxc-border-color);
}

.uxc-dark-mode .uxc-info-card {
  background-color: #1a9260;
  color: #fff;
  box-shadow: 0 4px 14px 0 var(--uxc-shadow);
}

.uxc-dark-mode .uxc-info-card.uxc-info-card-error {
  background-color: #ca3434;
}

.uxc-dark-mode .uxc-info-card.uxc-info-card-info {
  background-color: var(--uxc-text-muted);
}

.uxc-dark-mode hr {
  background: none;
  border-bottom-color: var(--uxc-border-color);
}

.uxc-dark-mode .uxc-repater-line hr {
  background: var(--uxc-border-color);
}

.uxc-dark-mode .uxc-upload-image .uxc-btn-icon {
  border-color: var(--uxc-border-color);
}

.uxc-dark-mode .uxc-upload-image .uxc-btn-icon i {
  color: var(--uxc-text-muted);
}

.uxc-dark-mode [data-type="multi-input"] .uxc-btn {
  background-color: transparent;
  color: var(--uxc-accent);
  border-color: var(--uxc-accent);
}

.uxc-dark-mode [data-type="multi-input"] .uxc-btn:hover {
  border-color: var(--uxc-border-color);
  color: #fff;
  background: transparent;
}

.uxc-dark-mode [data-type="upload-file"] .uxc-btn-icon {
  border-color: var(--uxc-border-color);
}

.uxc-dark-mode [data-type="upload-file"] .uxc-btn-icon i {
  color: var(--uxc-text-secondary);
}

.uxc-dark-mode [data-type="upload-file"] .uxc-btn-icon:hover {
  border-color: var(--uxc-accent);
}

.uxc-dark-mode [data-type="upload-file"] .uxc-btn-icon:hover i {
  color: var(--uxc-accent);
}

.uxc-dark-mode .uxc-mobile-menu > svg {
  color: var(--uxc-text-primary);
}

.uxc-dark-mode .uxc-mobile-menu.uxc-active > svg {
  color: var(--uxc-accent);
}

.uxc-dark-mode .uxc-mobile-menu > div {
  background: #000000;
  border-radius: 0;
  box-shadow: 0 4px 14px 0 var(--uxc-shadow);
}

.uxc-dark-mode .uxc-color-cnt i {
  color: var(--uxc-text-muted);
}

.uxc-dark-mode .uxc-color-cnt i:hover {
  color: #ca3434;
}

/* Desktop mobile menu flex spacing */
.uxc-mobile-menu > div .uxc-flex {
  width: 100%;
  max-width: none;
  justify-content: space-between;
  text-align: left;
  border-radius: 0;
  border: 1px solid var(--uxc-border-color);
  background: #ffffff;
  padding: 10px; }

.uxc-dark-mode .uxc-status-C:before,
.uxc-dark-mode .uxc-status-P:before,
.uxc-dark-mode .uxc-status-R:before,
.uxc-dark-mode .uxc-status-X:before {
  background-color: #1a9260;
}

.uxc-dark-mode .uxc-status-C.uxc-status-P:before,
.uxc-dark-mode .uxc-status-P.uxc-status-P:before,
.uxc-dark-mode .uxc-status-R.uxc-status-P:before,
.uxc-dark-mode .uxc-status-X.uxc-status-P:before {
  background-color: #f69e00;
}

.uxc-dark-mode .uxc-status-C.uxc-status-R:before,
.uxc-dark-mode .uxc-status-P.uxc-status-R:before,
.uxc-dark-mode .uxc-status-R.uxc-status-R:before,
.uxc-dark-mode .uxc-status-X.uxc-status-R:before {
  background-color: #ca3434;
}

.uxc-dark-mode .uxc-status-C.uxc-status-X:before,
.uxc-dark-mode .uxc-status-P.uxc-status-X:before,
.uxc-dark-mode .uxc-status-R.uxc-status-X:before,
.uxc-dark-mode .uxc-status-X.uxc-status-X:before {
  background-color: #f6d000;
}

.uxc-dark-mode .uxc-input .uxc-icon-help {
  color: var(--uxc-text-muted);
}

.uxc-dark-mode .uxc-input .uxc-icon-help:hover {
  color: var(--uxc-accent);
}

.uxc-dark-mode .uxc-btn-icon.uxc-loading:before {
  border-color: rgba(var(--uxc-accent-rgb), 0.3);
  border-top-color: var(--uxc-accent);
}

.uxc-dark-mode .uxc-btn.uxc-loading:before {
  border-color: rgba(255, 255, 255, 0.3);
  border-top-color: var(--uxc-border-color);
}

.uxc-dark-mode .uxc-loading:before {
  border-color: rgba(var(--uxc-accent-rgb), 0.3);
  border-top-color: var(--uxc-accent);
}

.uxc-dark-mode .uxc-loading:after {
  color: #b0b3c7;
}

.uxc-dark-mode .uxc-btn.uxc-disabled {
  background-color: var(--uxc-bg-tertiary) !important;
  color: var(--uxc-text-muted) !important;
}

.uxc-dark-mode .uxc-info {
  background-color: #ca3434;
  color: #fff;
}

.uxc-dark-mode .uxc-input-btn .uxc-btn:not(:hover) {
  border-color: var(--uxc-border-color);
}

/* Payment links - light mode */
#uxc-payment-box a {
  color: #000;
  text-decoration: none;
  border: 1px solid var(--uxc-border-color);
  border-radius: 0;
  padding: 20px;
  font-weight: 500;
  letter-spacing: 0.3px;
  cursor: pointer;
  text-align: center;
  transition: all 0.3s;
}
#uxc-payment-box a:hover {
  color: var(--uxc-accent);
}

/* Payment links - dark mode */
.uxc-dark-mode #uxc-payment-box a,
.uxc-dark-mode #uxc-payment-box a:hover {
  color: #ffffff;
}

/* Super Admin Information Page Styles */
.uxc-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 20px;
  margin-top: 20px; }

.uxc-card {
  border: 1px solid var(--uxc-border-color);
  border-radius: 0;
  padding: 20px;
  transition: border-color 0.25s ease, box-shadow 0.25s ease; }
  .uxc-card:hover {
    border-color: var(--uxc-accent);
    box-shadow: 0 4px 14px 0 rgba(0, 0, 0, 0.1); }

.uxc-card-title {
  font-size: 16px;
  font-weight: 600;
  color: #464646;
  margin-bottom: 15px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--uxc-border-color); }

.uxc-info-table {
  width: 100%;
  border-collapse: collapse; }
  .uxc-info-table td {
    padding: 10px 0;
    border-bottom: 1px solid var(--uxc-border-color);
    font-size: 14px;
    color: #464646; }
  .uxc-info-table td:first-child {
    font-weight: 600;
    color: #5c7171;
    min-width: 150px; }
  .uxc-info-table tr:last-child td {
    border-bottom: none; }


/*
 * ==========================================================
 * LOGIN BOX THEME TOGGLE POSITIONING
 * ==========================================================
 */

/* Position theme toggle at top right of screen */
.uxc-theme-toggle-top#uxc-theme-toggle {
  position: fixed;
  top: 20px;
  right: 20px;
  z-index: 9999999;
  width: 20px !important;
  height: 20px !important;
  border: none !important;
  background: transparent !important;
  border-radius: 0;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.uxc-theme-toggle-top#uxc-theme-toggle i {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 16px !important;
  height: 16px !important;
}

.uxc-theme-toggle-top#uxc-theme-toggle i svg {
  width: 16px !important;
  height: 16px !important;
}

/* 
 * ==========================================================
 * RESPONSIVE LOGO SIZING FOR MOBILE
 * ==========================================================
 */

/* Make logos smaller on mobile devices */
@media (max-width: 768px) {
  .uxc-login img,
  .uxc-installation img,
  .uxc-cloud-box img,
  .uxc-top img {
    max-width: 180px !important;
  }
}

/* Even smaller for very small screens */
@media (max-width: 480px) {
  .uxc-login img,
  .uxc-installation img,
  .uxc-cloud-box img,
  .uxc-top img {
    max-width: 140px !important;
    margin-bottom: 20px !important;
  }
}

/* Login logo: smaller at every breakpoint (overrides the grouped 180/140 caps above). */
.uxc-top img { max-width: 130px !important; }
@media (max-width: 768px) { .uxc-top img { max-width: 115px !important; } }
@media (max-width: 480px) { .uxc-top img { max-width: 100px !important; } }

/*
 * ==========================================================
 * SUPER ADMIN SETTINGS FOOTER
 * ==========================================================
 */

.uxc-settings-footer {
  padding-top: 20px;
  margin-top: 20px;
  border-top: 1px solid var(--uxc-border-color);
  text-align: right;
}

.uxc-dark-mode .uxc-settings-footer {
  border-top-color: var(--uxc-border-color);
}

/*
 * ==========================================================
 * TRANSACTION DETAILS VIEW
 * ==========================================================
 */

.uxc-transaction-details-view {
  background: transparent;
  padding: 20px;
  border-radius: 0;
  box-shadow: none;
}

.uxc-details-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  padding-bottom: 15px;
  border-bottom: 1px solid var(--uxc-border-color);
}

.uxc-details-header h2 {
  margin: 0;
  font-size: 20px;
  color: #464646;
}

.uxc-details-content {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.uxc-details-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 20px 0;
  border-bottom: 1px solid var(--uxc-border-color);
}

.uxc-details-row:last-child {
  border-bottom: none;
}

.uxc-details-row-stacked {
  flex-direction: column;
  gap: 8px;
}

.uxc-details-row-stacked .uxc-details-label {
  min-width: auto;
  flex-shrink: 0;
}

.uxc-details-row-stacked .uxc-details-value {
  text-align: left;
}

.uxc-details-label {
  font-weight: 600;
  color: #666;
  min-width: 120px;
  flex-shrink: 0;
  margin-bottom: 5px;
}

.uxc-details-value {
  color: #464646;
  text-align: right;
  flex: 1;
  word-break: break-word;
}

.uxc-details-value a.uxc-link {
  color: var(--uxc-accent);
  text-decoration: none;
}

.uxc-details-value a.uxc-link:hover {
  text-decoration: underline;
}

.uxc-details-value .uxc-code-block {
  background: #f8f8f8;
  padding: 8px;
  border-radius: 0;
  font-family: monospace;
  font-size: 12px;
  word-break: break-all;
}

.uxc-status-badge {
  display: inline-block;
  padding: 4px 12px;
  border-radius: 0;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
}

.uxc-details-value.uxc-status-badge {
  flex: none;
  align-self: flex-end;
}

.uxc-status-p {
  background: #856404;
  color: #fff;
}

.uxc-status-c {
  background: #1a6b3c;
  color: #fff;
}

.uxc-status-f {
  background: #f8d7da;
  color: #721c24;
}

.uxc-status-u {
  background: #fff3cd;
  color: #856404;
}

.uxc-status-i {
  background: #e2e3e5;
  color: #383d41;
}

.uxc-status-x {
  background: #555;
  color: #fff;
}

.uxc-details-actions {
  margin-top: 25px;
  padding-top: 20px;
  border-top: 1px solid var(--uxc-border-color);
  display: flex;
  gap: 10px;
  justify-content: flex-end;
}

.uxc-icon-copy {
  cursor: pointer;
  margin-left: 8px;
}

.uxc-icon-copy:hover {
  opacity: 0.8;
}

.uxc-icon-copy-large {
  font-size: 20px;
  position: absolute;
  right: 0;
  top: 15px;
  cursor: pointer;
  display: flex;
  align-items: center;
}

.uxc-icon-copy-large span {
  position: absolute;
  right: 100%;
  margin-right: 8px;
  font-size: 11px;
  color: #856404;
  white-space: nowrap;
  font-weight: 500;
}

/* Webhook secret field + settings-area modal CSS now live inline in admin_code.php
   so a stale cached admin.css can't defeat them. */

.uxc-details-row-stacked {
  position: relative;
}

.uxc-details-label {
  display: block;
}

.uxc-info-box {
  padding: 10px 15px;
  background: #fff3cd;
  border: 1px solid var(--uxc-warning);
  border-radius: 0;
  color: #856404;
  font-size: 14px;
}

/* Dark mode support */
.uxc-dark-mode .uxc-transaction-details-view {
  background: transparent;
  box-shadow: none;
}

.uxc-dark-mode .uxc-details-header {
  border-bottom-color: var(--uxc-border-color);
}

.uxc-dark-mode .uxc-details-header h2 {
  color: var(--uxc-text-primary);
}

.uxc-dark-mode .uxc-details-row {
  border-bottom-color: var(--uxc-border-color);
}

.uxc-dark-mode .uxc-details-label {
  color: var(--uxc-text-secondary);
}

.uxc-dark-mode .uxc-details-value {
  color: var(--uxc-text-primary);
}

.uxc-dark-mode .uxc-details-value .uxc-code-block {
  background: var(--uxc-input-bg);
}

.uxc-dark-mode .uxc-details-actions {
  border-top-color: var(--uxc-border-color);
}

/* Mobile responsive styles */
@media (max-width: 768px) {
  .uxc-transaction-details-view {
    padding: 15px;
    border-radius: 0;
  }

  .uxc-details-header {
    flex-direction: row;
    align-items: center;
    gap: 10px;
  }

  .uxc-details-header h2 {
    font-size: 18px;
    flex: 1;
  }


  .uxc-details-label {
    min-width: auto;
    font-size: 14px;
  }

  .uxc-details-value {
    text-align: right;
    font-size: 14px;
  }

  .uxc-details-actions {
    flex-direction: column;
  }

  .uxc-details-actions .uxc-btn {
  }
}

/* ========================================
   Payment Request Form Styles
   ======================================== */

/* Area visibility control - hide transactions table when in payment request mode */
.uxc-area-payment-request #uxc-table-transactions {
  display: none;
}

/* Hide payment request form by default */
#uxc-payment-request-content {
  display: none;
}

/* Show payment request form when area class is added */
.uxc-area-payment-request #uxc-payment-request-content {
  display: block;
  animation: uxc-fade-in 0.5s;
}

/* Hide the request payment button when the form is open */
.uxc-area-payment-request #uxc-request-payment {
  display: none;
}

/* Hide transactions UI elements when payment request form is open */
.uxc-area-payment-request .uxc-nav-wide {
  display: none;
}

.uxc-area-payment-request .uxc-transactions-info {
  display: none;
}

.uxc-area-payment-request [data-area="transactions"] > hr {
  display: none;
}

/* Create editors own the view: pagination stays hidden while either editor is open. !important
   because the deep-linked create pages rebuild the pagination after the editor opens (ajax render),
   which clobbered the editor's inline hide. */
.uxc-area-payment-request .uxc-pagination,
.uxc-area-create-checkout .uxc-pagination {
  display: none !important;
}

/* Payment type toggle buttons */
.uxc-payment-type-toggle {
  display: flex;
  gap: 10px;
  margin: 15px 0;
}

.uxc-payment-type-btn {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  border: 1px solid var(--uxc-border-color);
  cursor: pointer;
  transition: all 0.2s;
}

.uxc-payment-type-btn:hover {
  border-color: var(--uxc-accent);
}

.uxc-payment-type-btn.uxc-active {
  border-color: var(--uxc-accent);
  background: rgba(var(--uxc-accent-rgb), 0.1);
}

.uxc-payment-type-icon {
  width: 24px;
  height: 24px;
}

.uxc-payment-type-label {
  font-size: 13px;
  font-weight: 500;
  text-align: center;
}

/* Mobile: 2x2 grid with icon left + label right so the 4 buttons no longer overflow horizontally */
@media (max-width: 768px) {
  .uxc-payment-type-toggle { display: grid; grid-template-columns: 1fr 1fr; }
  .uxc-payment-type-btn { flex-direction: row; align-items: center; justify-content: space-between; gap: 6px; padding: 10px 12px; }
  .uxc-payment-type-label { text-align: right; }
}

/* Currency grid */

/* Custom token type grid-select — reuses .uxc-currency-grid/.uxc-currency-item styling */
.uxc-token-type-grid {
  max-height: none !important;
  overflow: visible !important;
  overflow-y: visible !important;
  margin: 8px 0;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)) !important;
  gap: 12px;
}
.uxc-token-type-grid .uxc-currency-item {
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  text-align: left;
}
.uxc-token-type-grid .uxc-token-label {
  display: flex;
  flex-direction: column;
  line-height: 1.15;
  min-width: 0;
  flex: 1;
  width: 100%;
}
.uxc-token-type-grid .uxc-currency-code {
  text-align: right;
  width: 100%;
}
.uxc-token-type-grid .uxc-token-standard {
  font-size: 11px;
  font-weight: 400;
  opacity: 0.65;
  text-align: right;
  margin-top: 0;
}

.uxc-currency-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
  gap: 10px;
  margin: 15px 0;
  max-height: 200px;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: var(--uxc-accent) transparent;
}

/* Modern scrollbar for currency grid */
.uxc-currency-grid::-webkit-scrollbar {
  width: 6px;
}

.uxc-currency-grid::-webkit-scrollbar-track {
  background: #f5f5f5;
  border-radius: 0;
}

.uxc-currency-grid::-webkit-scrollbar-thumb {
  background: var(--uxc-accent);
  border-radius: 0;
  transition: all 0.3s ease;
  box-shadow: 0 1px 3px rgba(var(--uxc-accent-rgb), 0.3);
}

.uxc-currency-grid::-webkit-scrollbar-thumb:hover {
  background: color-mix(in srgb, var(--uxc-accent), #fff 18%);
  box-shadow: 0 1px 5px rgba(var(--uxc-accent-rgb), 0.5);
}

.uxc-currency-grid.uxc-compact-grid {
  grid-template-columns: repeat(auto-fill, minmax(70px, 1fr));
}

.uxc-currency-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  padding: 10px;
  border: 1px solid var(--uxc-border-color);
  cursor: pointer;
  transition: all 0.2s;
}

.uxc-currency-item:hover {
  border-color: var(--uxc-accent);
}

.uxc-currency-item.uxc-active {
  border-color: var(--uxc-accent);
  background: rgba(var(--uxc-accent-rgb), 0.1);
}

.uxc-currency-flag {
  width: 24px;
  height: 16px;
}

.uxc-currency-icon {
  width: 24px;
  height: 24px;
}

.uxc-currency-code {
  font-size: 12px;
  font-weight: 600;
  text-align: center;
}

/* System default note */
.uxc-system-default-note {
  margin: 15px 0;
  padding: 12px;
  border: 1px solid var(--uxc-border-color);
  font-size: 13px;
}

.uxc-system-default-note a {
  color: #D4AF37;
  text-decoration: none;
}

.uxc-system-default-note a:hover {
  text-decoration: underline;
}

/* Payment link display sections */
.uxc-payment-link-container {
  margin: 20px 0;
  padding: 15px;
  background: #f5f5f5;
  border-radius: 0;
}

.uxc-payment-link-label {
  font-size: 12px;
  color: #666;
  margin-bottom: 5px;
}

.uxc-payment-link-value {
  font-size: 14px;
  word-break: break-all;
}

/* Learn Page Styles - Professional */
.uxc-learn-container {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0;
}

/* Top navigation bar with ghost buttons */
.uxc-learn-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    padding: 10px 0 20px 0;
    justify-content: center;
    background: transparent;
    position: static;
    max-height: none;
    overflow: visible;
}

.uxc-learn-nav-btn {
    font-size: 14px;
    font-weight: 500;
    border-radius: 0;
    background-color: transparent;
    color: var(--uxc-accent);
    border: 1px solid var(--uxc-accent);
    padding: 8px 20px;
    cursor: pointer;
    transition: color .4s, background-color .4s, border-color .4s;
    font-family: "Uncheckout", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.uxc-learn-nav-btn:hover,
.uxc-learn-nav-btn:active {
    color: #000;
    border-color: var(--uxc-border-color);
}

.uxc-learn-nav-btn.active {
    background-color: var(--uxc-accent);
    color: #fff;
}

/* Content area */
.uxc-learn-content {
    flex: 1;
    width: 100%;
    box-sizing: border-box;
}

/* Section styling */
.uxc-learn-section {
    margin-top: 50px;
    scroll-margin-top: 20px;
}

.uxc-learn-section > .uxc-settings-title {
    margin-top: 0 !important;
    margin-bottom: 20px;
}

.uxc-learn-section > p {
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 25px;
    font-family: "Uncheckout", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

/* Card styling matching admin */
.uxc-learn-card {
    border: 1px solid var(--uxc-border-color);
    border-radius: 0;
    padding: 20px;
    margin-bottom: 20px;
    background: transparent;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.uxc-learn-card h3 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 15px;
    font-family: "Uncheckout", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.uxc-learn-card h4 {
    font-size: 14px;
    font-weight: 500;
    margin-top: 15px;
    margin-bottom: 10px;
}

.uxc-learn-card ul,
.uxc-learn-card ol {
    margin: 10px 0;
    padding-left: 20px;
}

.uxc-learn-card li {
    font-size: 14px;
    line-height: 1.6;
    margin: 8px 0;
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: pre-wrap;
}

/* Steps styling */
.uxc-learn-steps {
    list-style: none;
    counter-reset: step-counter;
    padding: 0;
}

.uxc-learn-steps li {
    counter-increment: step-counter;
    padding: 15px 15px 15px 45px;
    position: relative;
    margin-bottom: 10px;
    border: 1px solid var(--uxc-border-color);
    border-radius: 0;
    background: transparent;
}

.uxc-learn-steps li:before {
    content: counter(step-counter);
    position: absolute;
    left: 15px;
    top: 15px;
    width: 20px;
    height: 20px;
    background: var(--uxc-accent);
    color: #fff;
    border-radius: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 600;
}

/* Info boxes */
.uxc-learn-tip,
.uxc-learn-warning {
    border: 1px solid var(--uxc-border-color);
    border-left: 3px solid var(--uxc-accent);
    padding: 15px 20px;
    border-radius: 0;
    margin: 20px 0;
    background: transparent;
}

.uxc-learn-tip h4 {
    font-size: 14px;
    font-weight: 600;
    margin-top: 0;
    margin-bottom: 10px;
}

.uxc-learn-warning {
    border-left-color: var(--uxc-accent);
}

/* Code blocks */
.uxc-learn-code,
.uxc-learn-card pre,
.uxc-learn-card code {
    background: transparent;
    border: 1px solid var(--uxc-border-color);
    border-radius: 0;
    padding: 15px;
    font-family: 'Courier New', monospace;
    font-size: 13px;
    line-height: 1.5;
    margin: 15px 0;
    max-width: 100%;
    white-space: pre-wrap;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.uxc-learn-card pre {
    overflow-x: hidden;
}

.uxc-learn-card code {
    border: none;
    padding: 0;
    margin: 0;
}

/* Dark mode */
.uxc-dark .uxc-learn-nav {
    border-bottom-color: var(--uxc-border-color);
}

.uxc-dark .uxc-learn-nav-btn,
.uxc-dark-mode .uxc-learn-nav-btn {
    color: var(--uxc-accent);
    border-color: var(--uxc-accent);
    font-family: "Uncheckout", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.uxc-dark .uxc-learn-nav-btn:hover,
.uxc-dark .uxc-learn-nav-btn:active,
.uxc-dark-mode .uxc-learn-nav-btn:hover,
.uxc-dark-mode .uxc-learn-nav-btn:active {
    color: #fff;
    border-color: var(--uxc-border-color);
}

.uxc-dark .uxc-learn-nav-btn.active,
.uxc-dark-mode .uxc-learn-nav-btn.active {
    background-color: var(--uxc-accent);
    color: #000;
}

.uxc-dark .uxc-learn-section > .uxc-settings-title,
.uxc-dark .uxc-learn-card h3,
.uxc-dark .uxc-learn-card h4,
.uxc-dark .uxc-learn-tip h4,
.uxc-dark .uxc-learn-section > p,
.uxc-dark .uxc-learn-card li,
.uxc-dark .uxc-learn-code {
    color: #fff;
    font-family: "Uncheckout", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.uxc-dark .uxc-learn-card,
.uxc-dark .uxc-learn-steps li,
.uxc-dark .uxc-learn-tip,
.uxc-dark .uxc-learn-warning,
.uxc-dark .uxc-learn-code {
    border-color: var(--uxc-border-color);
}

.uxc-dark .uxc-learn-section {
    border-bottom-color: var(--uxc-border-color);
}

/* Responsive */
@media (max-width: 768px) {
    .uxc-learn-nav {
        gap: 8px;
        padding: 15px 0 28px 0;
    }

    .uxc-learn-nav-btn {
        padding: 6px 16px;
        font-size: 13px;
    }

    .uxc-learn-content {
        padding: 15px 0;
    }

    .uxc-learn-section > .uxc-settings-title {
        margin-top: 0 !important;
    }

    .uxc-settings-nav {
        gap: 8px;
        padding: 15px 0 28px 0;
    }
    .uxc-settings-nav-btn {
        padding: 5px 12px;
        font-size: 12px;
    }
}

/* Learn icon uses the standard .uxc-nav i svg sizing (16px) — removed the per-breakpoint !important overrides */

/* Currency formatting styles */
.uxc-amount-fiat-total {
    font-weight: 600;
}

.uxc-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
}
.uxc-pagination-btn {
    min-width: 36px;
    height: 36px;
    padding: 0;
    border: 1px solid var(--uxc-border-color);
    background: none;
    color: #464646;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
}
.uxc-pagination-btn:hover {
    border-color: var(--uxc-accent);
    color: var(--uxc-accent);
}
.uxc-pagination-btn.uxc-pagination-active {
    background: var(--uxc-accent);
    border-color: var(--uxc-accent);
    color: #fff;
}
.uxc-pagination-btn:disabled {
    opacity: 0.4;
    cursor: not-allowed;
}
.uxc-dark-mode .uxc-pagination-btn {
    border-color: var(--uxc-border-color);
    color: var(--uxc-text-primary);
}
.uxc-dark-mode .uxc-pagination-btn:hover {
    border-color: var(--uxc-accent);
    color: var(--uxc-accent);
}
.uxc-dark-mode .uxc-pagination-btn.uxc-pagination-active {
    background: var(--uxc-accent);
    border-color: var(--uxc-accent);
    color: #000 !important;
}

/*
 * ==========================================================
 * TRANSACTIONS INFO BOX
 * ==========================================================
 */

.uxc-transactions-info {
    padding: 20px;
    margin-top: 20px;
    margin-bottom: 16px;
    background: none;
    border: 1px solid var(--uxc-border-color, #e6e6e6);
    border-radius: 0;
    color: var(--uxc-text-secondary, #5c7171);
}
.uxc-transactions-info-title {
    font-weight: 700;
    font-size: 20px;
    color: var(--uxc-text-primary, #1a1a1a);
    margin-bottom: 2px;
}
.uxc-transactions-info-text {
    font-size: 13px;
    line-height: 20px;
    color: var(--uxc-text-secondary, #5c7171);
}

/* Dark mode */
.uxc-dark-mode .uxc-transactions-info {
    background: none;
    border-color: var(--uxc-border-color);
}
.uxc-dark-mode .uxc-transactions-info-title {
    color: var(--uxc-text-primary);
}
.uxc-dark-mode .uxc-transactions-info-text {
    color: var(--uxc-text-secondary);
}

.uxc-balance-header {
    border: 1px solid var(--uxc-border-color);
    border-radius: 0;
    background: none;
    padding: 15px;
    text-align: center;
}
@media (max-width: 768px) {
    [data-area="balances"] { padding-top: 9px; }
}

.uxc-dark-mode .uxc-balance-header {
    border-color: var(--uxc-border-color);
}

.uxc-balance-spinner {
    display: inline-block;
    width: 12px;
    height: 12px;
    border: 2px solid rgba(var(--uxc-accent-rgb), 0.25);
    border-top: 2px solid var(--uxc-accent);
    border-radius: 50%;
    animation: uxc-spin 0.8s linear infinite;
}
@keyframes uxc-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
#uxc-balance-total .uxc-balance-spinner { vertical-align: middle; margin-left: 8px; }
.uxc-balance-error .uxc-balance { color: #999; }
.uxc-balance-error .uxc-text { color: #c66; font-style: italic; }
.uxc-balance-sub td { background: rgba(0,0,0,0.02); font-size: 13px; }
/* The Wallets count row is a mobile-only td (real data-label so it translates); the desktop
   table keeps its two-column layout. */
@media (min-width: 769px) {
  #uxc-table-balances .uxc-balance-count-td { display: none; }
}
.uxc-dark-mode .uxc-balance-sub td { background: rgba(255,255,255,0.03); }
.uxc-balance-sub .uxc-balance { font-size: 13px; font-weight: 400; }
.uxc-balance-sub .uxc-address-label { padding-left: 32px; color: #666; }
.uxc-dark-mode .uxc-balance-sub .uxc-address-label { color: #aaa; }
.uxc-balance-count { font-size: 11px; color: #888; margin-left: 8px; font-weight: 400; }
.uxc-address-short { font-family: monospace; font-size: 12px; }
.uxc-balance-sub .uxc-text { font-size: 12px; }
/* usd sub-line aligns with the right-justified amount (operator 8/23). */
#uxc-table-balances .uxc-text { text-align: right; }
/* ===== Dashboard + Onboarding + UCASH (new) ===== */
.uxc-dashboard-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-bottom: 20px; }
@media (max-width: 1024px) { .uxc-dashboard-grid { grid-template-columns: repeat(2, 1fr); min-height: 0; } }
@media (max-width: 640px) { .uxc-dashboard-grid { grid-template-columns: 1fr; min-height: 0; } }
.uxc-dashboard-onboarding:empty, .uxc-dashboard-unlock-levels:empty { margin: 0; }
/* Dashboard header: title left, store selector pinned top-right and width-constrained
   (the shared .uxc-input would otherwise be full-width). .uxc-info.uxc-dashboard-header
   wins the display:flex over .uxc-info:not(:empty){display:block} by source order. */
.uxc-info.uxc-dashboard-header { display: flex; align-items: center; justify-content: space-between; gap: 0; flex-wrap: wrap; }
/* Dashboard header flush to the sidebar (shares the sidebar's right border; no left gutter). */
.uxc-info.uxc-dashboard-header { padding-left: calc(var(--uxc-content-left, 172px) - 16px) !important; padding-right: 0 !important; }
.uxc-dashboard-header .uxc-title { flex: 0 0 auto; }
.uxc-dashboard-header-right { display: flex; align-items: stretch; align-self: stretch; gap: 0; }
#uxc-dashboard-create-payment { white-space: nowrap; align-self: stretch; display: flex; align-items: center; justify-content: center; height: auto; padding: 0 14px; border-left: 1px solid var(--uxc-border-color, #e6e6e6); }
    #uxc-dashboard-create-payment > svg:first-child { top: -1px; }
.uxc-dashboard-store-slot:not(:empty) { flex: 0 0 auto; align-self: stretch; display: flex; align-items: center; padding: 0 14px; margin: 0; }
/* Dashboard store picker: borderless header trigger (left divider above) that materializes a
   store-button card at the top of the dashboard body (pushing the tiles down). */
.uxc-dashboard-store-trigger { display: inline-flex; align-items: center; gap: 6px; background: none; border: none; cursor: pointer; color: var(--uxc-text-primary, #000000); font-size: 13px; font-weight: 600; padding: 4px 2px; border-radius: 4px; }
.uxc-dashboard-store-trigger:hover { color: #1a1a1a; }
.uxc-dark-mode .uxc-dashboard-store-trigger:hover { color: #fff; }
.uxc-dashboard-store-trigger .uxc-ds-label { max-width: 160px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.uxc-dashboard-store-trigger .uxc-ds-caret { transition: transform 0.2s ease; flex: 0 0 auto; }
.uxc-dashboard-store-trigger.uxc-open .uxc-ds-caret { transform: rotate(180deg); }
.uxc-dashboard-store-trigger .uxc-ds-icon { display: inline-flex; width: 18px; height: 18px; } /* shown on desktop too (mobile already shows it) */
.uxc-dashboard-store-card { display: none; margin: 0 0 18px 0; padding: 16px; }
.uxc-dashboard-store-card.uxc-open { display: block; animation: uxcDsIn 0.18s ease-out; }
.uxc-dashboard-store-card .uxc-ds-card-title { margin-bottom: 12px; }
.uxc-dashboard-store-card .uxc-ds-btns { display: flex; flex-wrap: wrap; gap: 8px; }
@media (max-width: 767px) { .uxc-dashboard-store-card-slot { margin-top: 14px; } }
.uxc-store-pick { border: 1px solid var(--uxc-border-color, #e6e6e6); background: transparent; color: var(--uxc-text-muted, #6a6a6a); cursor: pointer; }
.uxc-store-pick:hover { border-color: var(--uxc-accent); color: #1a1a1a; }
.uxc-dark-mode .uxc-store-pick:hover { color: #fff; }
.uxc-store-pick.uxc-active { background: var(--uxc-accent); border-color: var(--uxc-accent); color: #fff; }
.uxc-dark-mode .uxc-store-pick.uxc-active { color: #1a1a1a; }
@keyframes uxcDsIn { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }

.uxc-stat-tile { background: transparent !important; border: 1px solid var(--uxc-border-color); border-radius: 0; padding: 20px; box-shadow: 0 1px 3px rgba(0,0,0,0.05); transition: border-color 0.2s; }
.uxc-stat-tile:hover { border-color: var(--uxc-accent); }
.uxc-stat-tile-label { color: #5c7171; font-size: 13px; margin-bottom: 8px; }
.uxc-stat-tile-value { color: #464646; font-size: 24px; font-weight: 600; }
.uxc-pending-badge { display: inline-block; margin-left: 6px; padding: 1px 7px; border-radius: 0; font-size: 11px; font-weight: 600; vertical-align: middle; }
.uxc-pending-unopened { background: rgba(211, 137, 41, 0.16); color: #b9792a; }
.uxc-pending-opened { background: rgba(40, 120, 200, 0.16); color: #2b7fc4; }
.uxc-pending-expired { background: rgba(120, 120, 120, 0.16); color: #8a8a8a; }
.uxc-dark-mode .uxc-pending-unopened { color: #d99a4d; }
.uxc-dark-mode .uxc-pending-opened { color: #6fb0e6; }
.uxc-dark-mode .uxc-pending-expired { color: #a0a0a0; }
.uxc-pending-submitted { background: rgba(46, 125, 50, 0.16); color: #2e7d32; }
.uxc-dark-mode .uxc-pending-submitted { color: #6fbf7a; }
[data-area="transactions"]:has(.uxc-transaction-details-view) .uxc-pagination { display: none !important; }
.uxc-stat-tile-title { color: #464646; font-size: 15px; font-weight: 600; margin-bottom: 12px; }

.uxc-dashboard-chart { padding: 20px; margin-bottom: 20px; }
.uxc-dashboard-chart-area { position: relative; height: 280px; }

.uxc-dashboard-onboarding { margin-bottom: 20px; }
.uxc-onboarding { padding: 20px; margin-top: 16px; border: 1px solid var(--uxc-border-color); border-radius: 0; background: transparent !important; }
.uxc-onboarding-head { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; flex-wrap: wrap; }
.uxc-onboarding-head .uxc-stat-tile-title { margin-bottom: 0; }
.uxc-unlock-head .uxc-stat-tile-title { margin-bottom: 0; }
.uxc-progress { flex: 1; min-width: 120px; height: 8px; background: #e5e5e5; border-radius: 0; overflow: hidden; }
.uxc-progress > div { height: 100%; background: var(--uxc-accent); transition: width 0.3s; }
/* Head bar = the shared thick in-text track (uxc-ob-progress-thick); the old separate fraction line is retired. */
.uxc-onboarding-head .uxc-onboarding-progress { flex: 1 1 auto; min-width: 120px; height: 19px; min-height: 19px; } /* half the 38px thick default - head stays centered around it */

.uxc-stepper { display: flex; flex-direction: column; gap: 10px; }
.uxc-step { display: flex; align-items: center; gap: 14px; padding: 12px; border: 1px solid var(--uxc-border-color); border-radius: 0; background: transparent; }
.uxc-step-num { width: 28px; height: 28px; border-radius: 0; background: transparent; color: #5c7171; display: flex; align-items: center; justify-content: center; font-weight: 600; flex-shrink: 0; }
.uxc-step-body { flex: 1; min-width: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 3px 8px; }
.uxc-step-label { color: #464646; font-weight: 500; }
.uxc-step-points { color: var(--uxc-accent); font-size: 11px; font-weight: 600; border: 1px solid var(--uxc-accent); padding: 1px 6px; white-space: nowrap; flex-shrink: 0; }
.uxc-step-desc { color: #6b7280; font-size: 12px; line-height: 1.35; margin-top: 0; flex: 1 1 100%; }
.uxc-step.uxc-step-done { background: #f4faf6; border-color: var(--uxc-success); }
.uxc-step.uxc-step-done .uxc-step-num { background: #2e7d32; color: #fff; }
.uxc-step.uxc-step-done .uxc-step-label { color: #2e7d32; }
.uxc-step-cta { flex-shrink: 0; }

.uxc-dashboard-recent { padding: 20px; margin-bottom: 40px; }
.uxc-dashboard-recent-list { display: flex; flex-direction: column; gap: 12px; }
.uxc-recent-item { display: flex; gap: 12px; padding: 10px 12px; border: 1px solid var(--uxc-border-color); font-size: 13px; color: #464646; flex-wrap: wrap; align-items: center; cursor: pointer; transition: background 0.15s; }
/* Hover = gold border + text (never a background wash). */
.uxc-recent-item:hover { background: transparent; border-color: var(--uxc-accent); color: var(--uxc-accent); }
.uxc-dark-mode .uxc-recent-item:hover { background: transparent; border-color: var(--uxc-accent); color: var(--uxc-accent); }
.uxc-recent-status { flex: 0 0 auto; font-weight: 600; padding: 2px 8px; border-radius: 0; font-size: 12px; white-space: nowrap; }
.uxc-recent-status.uxc-recent-C { color: #2e7d32; }
.uxc-recent-status.uxc-recent-P { color: var(--uxc-accent); }
.uxc-recent-status.uxc-recent-X { color: #c62828; }
.uxc-recent-amount { font-weight: 600; flex: 1 1 0; }
.uxc-recent-crypto { color: #5c7171; flex: 1 1 0; }
.uxc-recent-date { color: #999; flex: 0 0 150px; white-space: nowrap; }
.uxc-recent-id { flex: 0 0 70px; color: #5c7171; white-space: nowrap; }
.uxc-recent-item.uxc-recent-active { background: rgba(var(--uxc-accent-rgb),0.06); }
.uxc-recent-detail { padding: 10px 14px; background: #fafafa; border-left: 3px solid var(--uxc-accent); border-bottom: 1px solid var(--uxc-border-color); display: grid; grid-template-columns: 1fr 1fr; gap: 4px 18px; font-size: 12px; color: #464646; }
.uxc-recent-detail-row { display: flex; gap: 6px; align-items: baseline; }
.uxc-recent-detail-row > b { color: #999; font-weight: 600; flex: 0 0 64px; }
.uxc-recent-detail-wide { grid-column: 1 / -1; }
.uxc-dark-mode .uxc-recent-item.uxc-recent-active { background: rgba(255,255,255,0.06); }
.uxc-dark-mode .uxc-recent-detail { background: rgba(255,255,255,0.03); }

.uxc-dark-mode .uxc-stat-tile, .uxc-dark-mode .uxc-onboarding, .uxc-dark-mode .uxc-step { background: #2a2a2a; border-color: var(--uxc-border-color); }
.uxc-dark-mode .uxc-stat-tile-label, .uxc-dark-mode .uxc-onboarding-progress-text, .uxc-dark-mode .uxc-step-desc, .uxc-dark-mode .uxc-recent-crypto { color: #9aa0a0; }
.uxc-dark-mode .uxc-stat-tile-value, .uxc-dark-mode .uxc-stat-tile-title, .uxc-dark-mode .uxc-step-label, .uxc-dark-mode .uxc-recent-item { color: #e0e0e0; }
.uxc-dark-mode .uxc-progress { background: #3a3a3a; }
.uxc-dark-mode .uxc-step { background: transparent; }
.uxc-dark-mode .uxc-step-num { background: transparent; color: #ccc; }
.uxc-dark-mode .uxc-step.uxc-step-done { border-color: var(--uxc-success); }
.uxc-dark-mode .uxc-step.uxc-step-done .uxc-step-label { color: #9adfbf; }
.uxc-dark-mode .uxc-recent-item { border-color: var(--uxc-border-color); }

/* Mobile: Recent activity card-stacks like the uxc-table pages (one bordered card per item,
   each field a label-left / value-right row via the same data-label pattern). */
@media (max-width: 768px) {
  .uxc-dashboard-recent-list { gap: 12px; }
  .uxc-recent-item { flex-direction: column; align-items: stretch; flex-wrap: nowrap; gap: 0; padding: 12px; border: 1px solid var(--uxc-border-color); }
  .uxc-recent-item > span { display: flex; flex: 0 0 auto; justify-content: space-between; align-items: center; width: 100%; padding: 4px 0; text-align: right; }
  .uxc-recent-item > span::before { content: attr(data-label); font-weight: 600; color: var(--uxc-text-muted, #999); margin-right: 12px; text-align: left; }
  .uxc-recent-item > span:empty { display: none; } /* crypto row only exists for fiat requests */
}

/* Onboarding card: collapsible / expandable */
.uxc-onboarding-head { cursor: pointer; user-select: none; }
.uxc-onboarding-toggle { margin-left: 8px; color: #5c7171; font-size: 24px; line-height: 1; transition: transform 0.2s; }
.uxc-onboarding.uxc-onboarding-collapsed .uxc-stepper { display: none; }
.uxc-onboarding.uxc-onboarding-collapsed .uxc-onboarding-head { margin-bottom: 0; }
.uxc-onboarding.uxc-onboarding-collapsed .uxc-onboarding-toggle { transform: rotate(-90deg); }
.uxc-dark-mode .uxc-onboarding { background: transparent !important; }
.uxc-dark-mode .uxc-onboarding-toggle { color: #9aa0a0; }

/* Onboarding card: inline step panels (each incomplete step expands a compact form in place).
   A step renders as .uxc-step-wrap > .uxc-step (row) + .uxc-step-cta-group (Start/Close button)
   + .uxc-step-panel (form; the full-settings link sits at its bottom). */
.uxc-step-wrap { display: flex; flex-direction: column; }
.uxc-step.uxc-step-openable { cursor: pointer; transition: border-color 0.15s; }
.uxc-step.uxc-step-openable:hover { border-color: var(--uxc-accent); }
.uxc-step.uxc-step-open { border-color: var(--uxc-accent); }
.uxc-step-panel { margin-top: 8px; padding: 14px 12px 12px; border: 1px solid var(--uxc-border-color); border-top: 2px solid var(--uxc-accent); background: transparent; }
.uxc-step-panel[hidden] { display: none; }
.uxc-step-panel .uxc-btn { flex-shrink: 0; }
.uxc-step-cta-group { align-self: flex-end; display: inline-flex; flex-direction: column; align-items: flex-end; gap: 2px; }
.uxc-step-more { font-size: 12px; color: var(--uxc-text-muted, #6b7280); text-decoration: none; padding: 6px 12px; display: inline-block; }
.uxc-step-more:hover { color: var(--uxc-accent); }
.uxc-ob-more-row { display: flex; justify-content: flex-end; }
.uxc-ob-dropzone { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 6px 8px; width: 100%; max-width: 100%; box-sizing: border-box; padding: 12px 10px; border: 1px dashed var(--uxc-border-color, #b0b0b0); background: transparent; cursor: pointer; font-family: inherit; margin-bottom: 10px; }
.uxc-ob-dropzone-ico { width: 18px; height: 18px; color: var(--uxc-text-muted, #6b7280); flex-shrink: 0; }
.uxc-ob-dropzone-title { font-size: 13px; font-weight: 600; color: var(--uxc-text-primary, #1a1a1a); }
.uxc-ob-dropzone-sub { font-size: 12px; color: var(--uxc-text-muted, #6b7280); }
.uxc-ob-dropzone:hover, .uxc-ob-dropzone.uxc-ob-drop-over { border-color: var(--uxc-accent); }
.uxc-ob-dropzone:hover .uxc-ob-dropzone-title, .uxc-ob-dropzone.uxc-ob-drop-over .uxc-ob-dropzone-title, .uxc-ob-dropzone.uxc-ob-drop-over .uxc-ob-dropzone-ico { color: var(--uxc-accent); }

.uxc-ob-row { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.uxc-ob-sub { margin: 14px 0 8px; font-size: 12px; font-weight: 600; color: var(--uxc-text-muted, #6b7280); text-transform: uppercase; letter-spacing: 0.04em; }
.uxc-ob-row + .uxc-ob-row { margin-top: 10px; }
.uxc-ob-input, .uxc-ob-select { height: 38px; padding: 0 10px; border: 1px solid var(--uxc-border-color, #e6e6e6); background: transparent; color: var(--uxc-text-primary, #1a1a1a); font-size: 13px; font-family: inherit; min-width: 0; box-sizing: border-box; }
.uxc-ob-input-slim { height: 32px; }
.uxc-ob-input:focus, .uxc-ob-select:focus { outline: none; border-color: var(--uxc-accent); }
.uxc-ob-input::placeholder { color: var(--uxc-text-muted, #9aa0a0); }
.uxc-ob-grow { flex: 1 1 200px; }
.uxc-ob-narrow { flex: 0 0 96px; }
.uxc-ob-select { flex: 0 0 auto; max-width: 180px; }
.uxc-ob-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-bottom: 10px; }
.uxc-ob-field { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.uxc-ob-field > span { font-size: 11px; font-weight: 600; color: var(--uxc-text-muted, #6b7280); }
.uxc-ob-field .uxc-ob-input { width: 100%; }
.uxc-ob-note { font-size: 12px; color: var(--uxc-text-muted, #6b7280); line-height: 1.4; margin-top: 10px; }
.uxc-ob-msg { font-size: 12px; line-height: 1.45; margin-top: 8px; min-height: 0; color: var(--uxc-text-muted, #6b7280); }
.uxc-ob-msg:empty { display: none; }
.uxc-ob-msg b { color: var(--uxc-text-primary, #1a1a1a); }
.uxc-ob-msg-bad { color: #c62828; }
.uxc-ob-msg-ok { color: #2e7d32; }

.uxc-ob-choices { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 10px; }
.uxc-ob-choice { padding: 7px 14px; font-size: 13px; font-weight: 600; border: 1px solid var(--uxc-border-color, #e6e6e6); background: transparent; color: var(--uxc-text-muted, #6a6a6a); cursor: pointer; font-family: inherit; }
.uxc-ob-choice:hover { border-color: var(--uxc-accent); color: var(--uxc-text-primary, #1a1a1a); }
.uxc-ob-choice-active { border-color: var(--uxc-accent); color: var(--uxc-accent); box-shadow: inset 0 -2px 0 var(--uxc-accent); }

.uxc-ob-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.uxc-ob-chip { display: inline-flex; align-items: center; gap: 6px; padding: 4px 8px; border: 1px solid var(--uxc-border-color, #e6e6e6); font-size: 12px; color: var(--uxc-text-primary, #1a1a1a); max-width: 100%; overflow-wrap: anywhere; }
.uxc-ob-chip b { color: var(--uxc-accent); font-weight: 700; font-size: 11px; }
.uxc-ob-chip-x { border: none; background: none; cursor: pointer; color: var(--uxc-text-muted, #9aa0a0); font-size: 14px; line-height: 1; padding: 0 2px; font-family: inherit; }
.uxc-ob-chip-x:hover { color: #c62828; }

.uxc-ob-progress { display: flex; align-items: center; gap: 12px; }
.uxc-ob-progress .uxc-progress { flex: 1; }
.uxc-ob-progress-text { font-size: 12px; color: var(--uxc-text-muted, #6b7280); white-space: nowrap; }
/* Domain step: one row - button-height track with the numbers centered inside + Add funds at the right. */
.uxc-ob-progress-row { align-items: stretch; }
.uxc-ob-progress-thick { position: relative; flex: 1 1 auto; min-width: 0; align-self: stretch; height: auto; min-height: 38px; }
.uxc-ob-progress-thick .uxc-ob-progress-text { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; margin: 0; color: var(--uxc-text-primary, #1a1a1a); font-weight: 600; }
.uxc-dark-mode .uxc-ob-progress-thick .uxc-ob-progress-text { color: #ffffff; text-shadow: 0 1px 2px rgba(0,0,0,0.55); }

.uxc-ob-result { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-top: 10px; }
.uxc-ob-link { font-size: 13px; color: var(--uxc-accent); text-decoration: none; word-break: break-all; }
.uxc-ob-link:hover { text-decoration: underline; }
.uxc-ob-done-panel { border-top: 1px solid var(--uxc-border-color); background: transparent; }
.uxc-ob-done-panel .uxc-ob-result { margin-top: 0; padding-top: 4px; }
.uxc-ob-preview { margin-top: 10px; }
.uxc-ob-preview img { max-height: 40px; max-width: min(160px, 100%); display: block; }

.uxc-dark-mode .uxc-step-panel { border-color: var(--uxc-border-color); background: transparent; }
.uxc-dark-mode .uxc-ob-input, .uxc-dark-mode .uxc-ob-select { border-color: var(--uxc-border-color, #3a3a3a); color: #e0e0e0; background: transparent; }
.uxc-dark-mode .uxc-ob-input::placeholder { color: #8a8a8a; }
.uxc-dark-mode .uxc-ob-note, .uxc-dark-mode .uxc-ob-msg, .uxc-dark-mode .uxc-ob-progress-text, .uxc-dark-mode .uxc-ob-field > span { color: #9aa0a0; }
.uxc-dark-mode .uxc-ob-msg b { color: #e0e0e0; }
.uxc-dark-mode .uxc-ob-msg-bad { color: #e57373; }
.uxc-dark-mode .uxc-ob-msg-ok { color: #9adfbf; }
.uxc-dark-mode .uxc-ob-choice { border-color: var(--uxc-border-color, #3a3a3a); color: #9aa0a0; }
.uxc-dark-mode .uxc-ob-choice:hover { color: #e0e0e0; }
.uxc-dark-mode .uxc-ob-choice-active { color: var(--uxc-accent); }
.uxc-dark-mode .uxc-ob-chip { border-color: var(--uxc-border-color, #3a3a3a); color: #e0e0e0; }
.uxc-dark-mode .uxc-step-more { color: #9aa0a0; }
.uxc-dark-mode .uxc-step-more:hover { color: var(--uxc-accent); }
.uxc-dark-mode .uxc-ob-done-panel { border-top: 1px solid var(--uxc-border-color); }

@media (max-width: 768px) {
    .uxc-ob-row { flex-direction: column; align-items: stretch; }
    .uxc-ob-row .uxc-btn { width: 100%; }
    .uxc-ob-select { max-width: none; width: 100%; }
    .uxc-ob-narrow { flex: 1 1 auto; }
    /* Column rows: kill the row-mode flex basis (it grows HEIGHT vertically) - inputs go full width, natural height. */
    .uxc-ob-row .uxc-ob-grow { flex: 0 1 auto; width: 100%; }
    .uxc-ob-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}


/* =========================================================================
   a11y: WCAG 2.1 AA color-contrast fix (added 2026-06-19)
   Brand gold var(--uxc-accent) = 3.9:1 on white, just under the 4.5:1 minimum for
   normal-size text. Darken to #86651f (5.39:1 on white) ONLY on these two
   end-user login elements; the rest of the gold brand accent is untouched.
   ========================================================================= */
#uxc-submit-cloud-login,
#uxc-registration-box {
    color: #86651f !important;
}

/* Color picker (HEX/RGB/CMYK) for [data-type="color"] settings fields. */
[data-type="color"] { margin-bottom: 10px; }
.uxc-color-picker { display: flex; align-items: center; gap: 8px; width: 100%; }
.uxc-color-input-wrap { position: relative; flex: 1; min-width: 180px; display: flex; align-items: center; }
.uxc-color-input-wrap .uxc-color-text { width: 100%; padding-right: 30px; }
.uxc-color-clear { position: absolute; right: 8px; top: 50%; transform: translateY(-50%); cursor: pointer; color: var(--uxc-text-muted, #999); font-style: normal; font-size: 16px; line-height: 1; display: none; }
.uxc-color-clear:hover { color: var(--uxc-text-primary, #333); }
.uxc-color-picker .uxc-color-swatch { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; min-width: 40px; border-radius: 0; border: 1px solid var(--uxc-border-color, #ddd); cursor: pointer; flex-grow: 0; flex-shrink: 0; overflow: hidden; }
.uxc-color-icon { width: 18px; height: 18px; color: var(--uxc-text-secondary, #666); pointer-events: none; }
.uxc-color-picker .uxc-color-native { position: absolute; inset: 0; margin: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; border: none; padding: 0; min-width: 0; min-height: 0; }
.uxc-color-formats { display: flex; flex-shrink: 0; height: 40px; }
.uxc-color-formats button { padding: 6px 8px; font-size: 11px; border: 1px solid var(--uxc-border-color, #ddd); background: transparent; color: var(--uxc-text-secondary, #666); cursor: pointer; line-height: 1; }
.uxc-color-formats button:first-child { border-radius: 0; }
.uxc-color-formats button:last-child { border-radius: 0; }
.uxc-color-formats button:not(:first-child) { border-left: none; }
.uxc-color-formats button.uxc-active { background: var(--uxc-text-primary, #333); color: #fff; border-color: var(--uxc-text-primary, #333); }
.uxc-dark-mode .uxc-color-formats button.uxc-active { color: #000; }

/* Spend-tier premium features: a gold star (.uxc-premium-star) next to the title marks premium
   rows — both unlocked and locked. Unlocked rows otherwise look like any other setting (no box);
   locked rows stay dimmed (opacity .6) with the "Unlocks at $N" hint + disabled input. Rows are
   tagged uxc-premium-unlocked / uxc-premium-locked by the settings renderer from
   bxc_unlock_feature_thresholds(); the star is emitted by the renderer too. The path fill is
   forced to the premium gold here (CSS beats the SVG's black fill attribute). */
.uxc-input.uxc-premium-locked { opacity: 0.6; }
.uxc-input .uxc-premium-hint { color: #999; font-size: 12px; margin-top: 4px; }
.uxc-dark-mode .uxc-input .uxc-premium-hint { color: #8a8a8a; }
.uxc-premium-star { display: inline-block; width: 14px; height: 14px; vertical-align: middle; margin-left: 5px; margin-top: -5px; }
.uxc-premium-star path { fill: var(--uxc-accent); }

/* Dashboard: Unlock Levels card (spend-tier upsell). Rendered by BXCAdmin.unlockLevels() into
   .uxc-dashboard-unlock-levels, directly under the onboarding card. Reuses uxc-card / uxc-progress. */
.uxc-unlock-levels { margin-top: 16px; margin-bottom: 16px; }
.uxc-unlock-head { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; cursor: pointer; user-select: none; }
.uxc-unlock-total { font-size: 13px; color: #5c7171; margin-left: auto; }
.uxc-unlock-total strong { color: var(--uxc-accent); }
.uxc-unlock-desc { flex: 0 0 100%; font-size: 12px; color: #777; line-height: 1.45; margin-top: 4px; }
.uxc-dark-mode .uxc-unlock-desc { color: #9a9a9a; }
.uxc-unlock-progress { margin: 14px 0 6px; }
/* Same treatment as the domain step row: button-height track (uxc-ob-progress-thick), text inside,
   Add funds at the right. The old .uxc-unlock-next text line is retired into the bar itself. */
.uxc-unlock-progress-row { display: flex; gap: 10px; align-items: stretch; margin: 14px 0; cursor: pointer; }
.uxc-unlock-progress-row .uxc-unlock-progress { margin: 0; }
.uxc-unlock-complete { font-size: 13px; font-weight: 600; color: #1a9260; margin: 10px 0 14px; }
.uxc-unlock-intro { font-size: 12px; color: #777; line-height: 1.4; margin-bottom: 14px; }
.uxc-unlock-list { display: flex; flex-direction: column; gap: 10px; }
.uxc-unlock-tier { display: flex; align-items: center; gap: 14px; padding: 12px; border: 1px solid var(--uxc-border-color); border-radius: 0; background: transparent; }
.uxc-unlock-tier-done { border-color: var(--uxc-success); }
.uxc-unlock-tier-badge { min-width: 28px; display: flex; align-items: center; justify-content: center; font-size: 15px; font-weight: 600; color: var(--uxc-accent); flex-shrink: 0; }
.uxc-unlock-tier-amount { font-weight: 600; color: var(--uxc-accent); white-space: nowrap; text-align: right; flex-shrink: 0; }
.uxc-unlock-tier-done .uxc-unlock-tier-badge { color: #1a9260; }
.uxc-unlock-tier-body { flex: 1; min-width: 0; }
.uxc-unlock-tier-label { font-weight: 600; font-size: 14px; }
.uxc-unlock-tier-desc { font-size: 12px; color: #777; margin-top: 2px; }
.uxc-unlock-tier-cta { flex-shrink: 0; }
.uxc-dark-mode .uxc-unlock-tier { border-color: var(--uxc-border-color); }
.uxc-dark-mode .uxc-unlock-tier-done { border-color: var(--uxc-success); }
.uxc-dark-mode .uxc-unlock-total,
.uxc-dark-mode .uxc-unlock-tier-desc,
.uxc-dark-mode .uxc-unlock-next,
.uxc-dark-mode .uxc-unlock-intro { color: #8a8a8a; }
.uxc-unlock-toggle { color: #5c7171; font-size: 24px; line-height: 1; transition: transform 0.2s; }
.uxc-unlock-levels.uxc-unlock-collapsed .uxc-unlock-body { display: none; }
.uxc-unlock-levels.uxc-unlock-collapsed .uxc-unlock-toggle { transform: rotate(-90deg); }
.uxc-unlock-levels.uxc-unlock-collapsed .uxc-unlock-desc { display: none; }
.uxc-dark-mode .uxc-unlock-toggle { color: #9aa0a0; }

/* Account page: stack labels above inputs */
.uxc-account-list .uxc-input {
    flex-direction: column;
    align-items: stretch;
    gap: 6px;
}
.uxc-account-list .uxc-input > span { margin-bottom: 2px; font-weight: 600; font-size: 13px; text-align: left; }
.uxc-account-list .uxc-input-with-action { width: 100%; display: flex; align-items: center; gap: 6px; }
.uxc-account-list .uxc-input-with-action > input { flex: 1; }
.uxc-account-list .uxc-input-with-action > .uxc-input-actions { flex-shrink: 0; }
.uxc-account-list .uxc-setting-description { font-weight: 400; font-size: 12px; color: var(--uxc-text-muted, #999); margin-top: 4px; text-align: left; }
#uxc-store-form { padding: 12px 0; }
#uxc-store-form .uxc-input { display: block; }
#uxc-store-form .uxc-input input { width: 100%; }
#uxc-stores-list { margin-top: 12px; }
#uxc-stores-list .uxc-store-row {
    padding: 14px 16px !important;
    margin-bottom: 10px;
    border: 1px solid var(--uxc-border-color, #e0e0e0) !important;
    border-radius: 0;
    background: transparent;
}
.uxc-dark-mode #uxc-stores-list .uxc-store-row {
    background: transparent;
    border-color: var(--uxc-border-color, #333) !important;
}
#uxc-stores-list .uxc-store-field { margin-top: 8px; }
#uxc-stores-list .uxc-store-field > label { display: block; font-size: 12px; font-weight: 600; color: var(--uxc-text-muted, #666); margin-bottom: 3px; text-align: left; }
#uxc-stores-list .uxc-input-with-action { position: relative; width: 100%; box-sizing: border-box; }
#uxc-stores-list .uxc-input-with-action > input {
    width: 100%;
    box-sizing: border-box;
    height: 42px;
    line-height: 35px;
    font-size: 13px;
    font-weight: 400;
    color: #464646;
    border: 1px solid var(--uxc-border-color);
    background-color: transparent;
    outline: none;
    border-radius: 0;
    padding: 0 36px 0 10px;
    margin: 0;
}
#uxc-stores-list .uxc-input-actions { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); display: flex; align-items: center; }
#uxc-stores-list .uxc-input-actions button { background: none; border: none; cursor: pointer; color: #969696; font-size: 16px; padding: 2px 4px; line-height: 1; }
#uxc-stores-list .uxc-input-actions button:hover { color: var(--uxc-accent); }
.uxc-dark-mode #uxc-stores-list .uxc-input-with-action > input { background-color: transparent; border-color: var(--uxc-border-color); color: var(--uxc-text-primary); }
#uxc-stores-list .uxc-store-header { display: flex; justify-content: space-between; align-items: center; }
#uxc-stores-list .uxc-store-name-wrap { display: flex; align-items: center; gap: 6px; }
#uxc-stores-list .uxc-store-name { font-weight: 600; font-size: 14px; }
#uxc-stores-list .uxc-store-name-input { font-family: inherit; font-weight: 600; font-size: 14px; padding: 2px 6px; border: 1px solid var(--uxc-border-color, #888); background: transparent; color: inherit; border-radius: 0; outline: none; }
#uxc-stores-list .uxc-store-rename, #uxc-stores-list .uxc-store-delete { background: none; border: none; cursor: pointer; color: #969696; padding: 4px; line-height: 0; display: inline-flex; align-items: center; }
#uxc-stores-list .uxc-store-rename:hover { color: var(--uxc-accent); }
#uxc-stores-list .uxc-store-delete:hover { color: #c00; }
.uxc-dark-mode #uxc-stores-list .uxc-store-name-input { background: transparent; border-color: var(--uxc-border-color); color: var(--uxc-text-primary); }

/* Payment request form: each field's input on its own full-width row (label above, input below),
   instead of sharing a row with its label. */
#uxc-payment-request-form .uxc-input { flex-direction: column; align-items: stretch; }
#uxc-payment-request-form .uxc-input > span { width: 100%; margin-bottom: 4px; }
#uxc-payment-request-form .uxc-input > input { width: 100%; }

/* Cryptocurrency address rows: coin icon + network badge, Upload button, on/off toggle. */
.uxc-addr-row { position: relative; border: 1px solid var(--uxc-border-color, #e6e6e6); background: transparent; padding: 14px 16px 12px; margin: 0 0 14px; }   /* relative = the trash's bottom-right anchor */
/* Empty state: no coins added yet - centered card below the add-coin selector */
.uxc-addr-empty[hidden] { display: none; }   /* explicit: the flex rule would override the hidden attribute */
.uxc-addr-empty { display: flex; flex-direction: column; align-items: center; gap: 8px; border: 1px solid var(--uxc-border-color, #e6e6e6); background: transparent; padding: 42px 20px; margin: 0 0 14px; color: var(--uxc-text-muted, #999); }
.uxc-addr-empty svg { opacity: .7; }
.uxc-addr-empty-title { font-size: 15px; font-weight: 600; color: var(--uxc-text-primary, #1a1a1a); }
.uxc-addr-empty-sub { font-size: 13px; }
.uxc-dark-mode .uxc-addr-empty { border-color: var(--uxc-border-color, #3a3a3a); }

/* Coin dropdown: add coins to accept; group assets open a networks step before Add. */
.uxc-coin-add { display: flex; flex-direction: column; gap: 10px; margin: 4px 0 0; width: 100%; max-width: 100%; }
.uxc-coin-add-controls { display: flex; align-items: stretch; gap: 10px; width: 100%; }
/* Chain multi-select: a card that PUSHES the page down (never overlays). All Chains is the
   select-everything preset (dashed); already-added chains disable. */
.uxc-coin-add-chain-card { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; width: 100%; max-width: 100%; box-sizing: border-box; padding: 14px; border: 1px solid var(--uxc-border-color, #e6e6e6); background: var(--uxc-card-bg, #fff); }
.uxc-coin-add-chain-card[hidden] { display: none; }   /* explicit: the flex rule overrides the hidden attribute */
.uxc-dark-mode .uxc-coin-add-chain-card { background: #000; }
.uxc-chain-badge { font: inherit; font-size: 14px; font-weight: 600; padding: 9px 18px; border: 1px solid var(--uxc-border-color, #e6e6e6); background: transparent; color: var(--uxc-text-secondary, #6b6b6b); cursor: pointer; border-radius: 999px; min-width: 64px; text-align: center; }
.uxc-chain-badge:hover { border-color: var(--uxc-accent); color: var(--uxc-accent); }
.uxc-chain-badge.uxc-chain-on { border-color: var(--uxc-accent); color: var(--uxc-accent); font-weight: 700; }
.uxc-chain-badge.uxc-chain-badge-all { border-style: dashed; }
.uxc-chain-badge[disabled] { opacity: .4; cursor: default; }
.uxc-chain-badge[disabled]:hover { border-color: var(--uxc-border-color, #e6e6e6); color: var(--uxc-text-secondary, #6b6b6b); }
.uxc-coin-add-trigger { flex: 1 1 auto; display: flex; align-items: center; gap: 12px; font: inherit; font-size: 16px; padding: 14px 16px; border: 1px solid var(--uxc-border-color, #e6e6e6); border-radius: 0; background: transparent; color: var(--uxc-text-primary, #1a1a1a1a); cursor: pointer; min-width: 0; text-align: left; height: 56px; box-sizing: border-box; }
.uxc-coin-add-trigger:hover, .uxc-coin-add-trigger[aria-expanded="true"] { border-color: var(--uxc-accent); }
.uxc-coin-add-ico { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; flex-shrink: 0; }
.uxc-coin-add-ico img { width: 28px !important; height: 28px !important; }
.uxc-coin-add-label { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--uxc-text-muted, #999); font-size: 16px; }
.uxc-coin-add-trigger[data-sel] .uxc-coin-add-label { color: var(--uxc-text-primary, #1a1a1a); font-weight: 700; }
.uxc-coin-add-chev { flex-shrink: 0; color: var(--uxc-text-muted, #999); width: 16px; height: 16px; }
.uxc-coin-add-chain { position: relative; flex: 0 1 auto; min-width: 170px; }
.uxc-coin-add-chain-btn { display: flex; align-items: center; justify-content: space-between; gap: 10px; font: inherit; font-size: 15px; font-weight: 600; padding: 0 16px; border: 1px solid var(--uxc-border-color, #e6e6e6); background: transparent; color: var(--uxc-text-primary, #1a1a1a); cursor: pointer; height: 56px; width: 100%; white-space: nowrap; box-sizing: border-box; }
.uxc-coin-add-chain-btn:hover, .uxc-coin-add-chain[aria-open] .uxc-coin-add-chain-btn { border-color: var(--uxc-accent); }
.uxc-coin-add-go2 { flex: 0 0 auto; white-space: nowrap; font-weight: 800; border: 1px solid var(--uxc-accent) !important; color: var(--uxc-accent) !important; background: transparent; cursor: pointer; padding: 0 22px; font-size: 15px; height: 56px; box-sizing: border-box; align-self: stretch; }
.uxc-coin-add-go2:hover { background: var(--uxc-accent); color: #fff !important; }
.uxc-dark-mode .uxc-coin-add-go2:hover { color: #0d0d0d !important; }
/* dropdown rows: bigger icons, structured grid (icon | name | tag/badge right-aligned) */
.uxc-coin-add-filter { font-size: 15px !important; padding: 11px 12px !important; margin-bottom: 6px; background: transparent !important; box-shadow: none !important; }
.uxc-coin-add-row { display: grid; grid-template-columns: 32px 1fr auto; align-items: center; column-gap: 12px; padding: 10px 12px; cursor: pointer; border: 0; background: transparent; }
.uxc-coin-add-row .uxc-currency-icon { width: 32px; height: 32px; }
.uxc-coin-add-name { font-size: 16px; color: var(--uxc-text-primary, #1a1a1a); }
.uxc-coin-add-meta { font-size: 13px; text-transform: uppercase; letter-spacing: .04em; color: var(--uxc-text-muted, #999); font-weight: 600; white-space: nowrap; }
.uxc-coin-add-panel { width: 100%; max-width: 100%; box-sizing: border-box; background: var(--uxc-card-bg, #fff); border: 1px solid var(--uxc-border-color, #e6e6e6); padding: 10px; }
.uxc-dark-mode .uxc-coin-add-panel { background: #000; }
.uxc-coin-add-filter { width: 100%; font: inherit; font-size: 13px; padding: 8px 10px; border: 1px solid var(--uxc-border-color, #e6e6e6); background: transparent; color: var(--uxc-text-primary, #1a1a1a); margin-bottom: 8px; }
.uxc-coin-add-all { width: 100%; max-width: 100%; box-sizing: border-box; font: inherit; font-size: 15px; font-weight: 700; padding: 12px; margin: 10px 0 8px; border: 1px solid var(--uxc-accent); background: transparent; color: var(--uxc-accent); cursor: pointer; }
.uxc-coin-add-all:hover { background: var(--uxc-accent); color: #fff; }
.uxc-dark-mode .uxc-coin-add-all:hover { color: #0d0d0d; }
.uxc-coin-add-list { max-height: 300px; overflow-y: auto; }
.uxc-coin-add-empty { padding: 14px; font-size: 13px; color: var(--uxc-text-muted, #999); text-align: center; }
.uxc-coin-add-go { margin-left: auto; }
.uxc-coin-add-go.uxc-btn-disabled { opacity: .45; pointer-events: none; }
.uxc-net-all { border-style: dashed; }
/* Card trash: lives in the expanded card's stats row, right of the cycling text (operator 8/22) */
.uxc-addr-stats .uxc-addr-stats-right { display: inline-flex; align-items: center; gap: 8px; flex-grow: 0; }   /* two classes: beats the fleet .uxc-input span block+grow rule, else the group stretches and dead space trails the Delete button (operator 8/22) */
.uxc-addr-stats .uxc-addr-count, .uxc-addr-stats .uxc-addr-cycle { display: inline-block; }   /* beat the fleet .uxc-input span display:block rule (same fight as the chip labels) */
.uxc-addr-trash { cursor: pointer; background: transparent; color: var(--uxc-accent); border: 1px solid var(--uxc-accent); border-radius: 0; height: 40px; line-height: 1; padding: 0 16px; font-size: 13px; font-weight: 600; white-space: nowrap; display: inline-flex; align-items: center; gap: 6px; }   /* ghost twin of .uxc-addr-btn-ghost; armed goes red (operator 8/22) */
.uxc-addr-trash:hover { background: var(--uxc-hover-bg); }
.uxc-addr-trash.uxc-addr-trash-armed { color: #c0392b; border-color: #c0392b; background: transparent; font-weight: 700; }

.uxc-addr-row.uxc-coin-hidden { display: none !important; }
.uxc-addr-row .uxc-addr-head { margin-top: 0; }
.uxc-dark-mode .uxc-addr-row { border-color: var(--uxc-border-color, #3a3a3a); }
.uxc-addr-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 15px; margin-bottom: 5px; }
.uxc-addr-head > span { font-size: 17px; font-weight: 600; }
.uxc-addr-head .uxc-label { position: relative; top: -1px; }   /* chain badge rides 1px higher (operator 8/22) */
.uxc-addr-input-row { display: flex; align-items: center; gap: 10px; }
.uxc-addr-input-row > input { flex: 1; width: auto; }
.uxc-addr-icon { position: relative; width: 28px; height: 28px; flex-shrink: 0; }
.uxc-addr-icon img { width: 28px; height: 28px; display: block; }
.uxc-addr-net { position: absolute; right: -6px; bottom: -4px; font-size: 8px; font-weight: 700; line-height: 1; color: #fff; background: var(--uxc-accent); padding: 2px 3px; border-radius: 3px; text-transform: uppercase; letter-spacing: .3px; }
.uxc-addr-icon > img.uxc-addr-net { width: 16px; height: 16px; padding: 0; background: #0d0d0d; border: 2px solid #0a0a0a; border-radius: 50%; object-fit: contain; box-shadow: 0 1px 3px rgba(0,0,0,.45); }
.uxc-addr-upload { flex-shrink: 0; cursor: pointer; font-size: 13px; font-weight: 600; color: #666; border: 1px solid var(--uxc-border-color); padding: 0 14px; height: 42px; line-height: 42px; white-space: nowrap; user-select: none; }
.uxc-addr-upload:hover { border-color: var(--uxc-accent); color: var(--uxc-accent); }
.uxc-addr-toggle { position: relative; display: inline-block; width: 36px; height: 20px; flex-shrink: 0; cursor: pointer; }
.uxc-addr-slider { position: absolute; inset: 0; background: #999; transition: background .2s; }
.uxc-addr-slider:before { content: ""; position: absolute; height: 14px; width: 14px; left: 3px; top: 3px; background: #fff; transition: transform .2s; box-shadow: 0 1px 2px rgba(0,0,0,.25); }
.uxc-addr-toggle[data-checked="1"] .uxc-addr-slider { background: var(--uxc-accent); }
.uxc-addr-toggle[data-checked="1"] .uxc-addr-slider:before { transform: translateX(16px); }
/* Toggled off = the whole card reads (and behaves) as off: content dimmed and inert; only the
   coin name + the toggle itself stay live so it can be switched back on. */
.uxc-addr-off .uxc-addr-input-row, .uxc-addr-off .uxc-addr-icon { opacity: .4; pointer-events: none; }
.uxc-addr-off .uxc-addr-chips { opacity: .4; pointer-events: none; }
.uxc-addr-off .uxc-addr-card { display: none; }
.uxc-addr-off .uxc-addr-settings { opacity: .4; pointer-events: none; }
.uxc-addr-off .uxc-addr-head > span:not(.uxc-addr-toggle) { opacity: .5; }

/* Wrench "Settings" button (replaces the old Upload button at the end of the address input row). */
.uxc-addr-settings { flex-shrink: 0; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 6px; font-size: 13px; font-weight: 600; color: #666; border: 1px solid var(--uxc-border-color); border-radius: 0; padding: 0 14px; height: 42px; line-height: 1; white-space: nowrap; user-select: none; background: transparent; }
.uxc-addr-settings:hover { border-color: var(--uxc-accent); color: var(--uxc-accent); }
.uxc-addr-settings .uxc-addr-settings-ic { transition: transform .2s; }
.uxc-addr-settings.uxc-open { color: var(--uxc-accent); border-color: var(--uxc-accent); }
.uxc-addr-settings.uxc-open .uxc-addr-settings-ic { transform: rotate(90deg); }

/* Collapsible per-coin settings card. Square borders; transparent bg; theme tokens (dark-mode safe). */
.uxc-addr-card[hidden] { display: none; }
.uxc-addr-card { margin-top: 10px; padding: 16px; border: 1px solid var(--uxc-border-color); border-radius: 0; background: transparent; min-width: 0; }
.uxc-addr-stats { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding-bottom: 12px; border-bottom: 1px solid var(--uxc-border-color); }
.uxc-addr-count { font-size: 13px; color: var(--uxc-text-secondary); }
.uxc-addr-count b { font-size: 20px; font-weight: 700; color: var(--uxc-accent); margin-right: 4px; vertical-align: -1px; }
.uxc-addr-cycle { text-transform: uppercase; letter-spacing: .4px; font-size: 11px; font-weight: 700; padding: 4px 10px; border: 1px solid transparent; border-radius: 0; white-space: nowrap; }
.uxc-addr-cycle.uxc-on { color: #fff; background: var(--uxc-success); }
.uxc-addr-cycle.uxc-off { color: var(--uxc-text-muted); background: transparent; border-color: var(--uxc-border-color); }
.uxc-addr-block { margin-top: 14px; min-width: 0; }
.uxc-addr-block + .uxc-addr-block { padding-top: 14px; border-top: 1px solid var(--uxc-border-color); }
.uxc-addr-block-label { font-size: 11px; font-weight: 700; letter-spacing: .6px; text-transform: uppercase; color: var(--uxc-text-muted); margin-bottom: 8px; }
.uxc-addr-card-hint { font-size: 12px; color: var(--uxc-text-secondary); line-height: 1.5; margin-bottom: 10px; }
.uxc-addr-card-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; width: 100%; }
.uxc-addr-card .uxc-addr-btn-primary { cursor: pointer; background: var(--uxc-accent); color: #fff; border: 1px solid var(--uxc-accent); border-radius: 0; height: 40px; line-height: 1; padding: 0 16px; font-size: 13px; font-weight: 600; white-space: nowrap; display: inline-flex; align-items: center; gap: 6px; }
.uxc-addr-card .uxc-addr-btn-primary:hover { opacity: .9; }
.uxc-dark-mode .uxc-addr-card .uxc-addr-btn-primary { color: #000; }
.uxc-addr-card .uxc-addr-btn-ghost { cursor: pointer; background: transparent; color: var(--uxc-accent); border: 1px solid var(--uxc-accent); border-radius: 0; height: 40px; line-height: 1; padding: 0 16px; font-size: 13px; font-weight: 600; white-space: nowrap; }
.uxc-addr-card .uxc-addr-btn-ghost:hover { background: var(--uxc-hover-bg); }
/* Confirmations education + chain-aware presets. */
.uxc-addr-conf-explain { font-size: 12px; color: var(--uxc-text-secondary); line-height: 1.5; margin-bottom: 10px; }
.uxc-addr-conf-presets { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
.uxc-addr-conf-preset { cursor: pointer; background: transparent; color: var(--uxc-text-secondary); border: 1px solid var(--uxc-border-color); border-radius: 0; padding: 5px 10px; font-size: 12px; font-weight: 600; white-space: nowrap; display: inline-flex; align-items: center; gap: 5px; }
.uxc-addr-conf-preset b { color: var(--uxc-accent); border-left: 1px solid var(--uxc-border-color); padding-left: 8px; font-size: 16px; font-weight: 800; }
.uxc-addr-conf-preset.uxc-addr-conf-active b { border-color: rgba(0, 0, 0, .25); }
/* Custom confirmations: the manual field shows only when the Custom preset is active (card carries .uxc-addr-conf-is-custom). */
.uxc-addr-card .uxc-addr-conf-custom-only { display: none; }
.uxc-addr-card.uxc-addr-conf-is-custom .uxc-addr-conf-custom-only { display: block; }
.uxc-addr-conf-preset:hover { border-color: var(--uxc-accent); }
.uxc-addr-conf-preset.uxc-addr-conf-active { background: var(--uxc-accent); border-color: var(--uxc-accent); color: #fff; }
.uxc-addr-conf-preset.uxc-addr-conf-active span, .uxc-addr-conf-preset.uxc-addr-conf-active b { color: #fff; }
.uxc-dark-mode .uxc-addr-card .uxc-addr-conf-preset.uxc-addr-conf-active, .uxc-dark-mode .uxc-addr-card .uxc-addr-conf-preset.uxc-addr-conf-active span, .uxc-dark-mode .uxc-addr-card .uxc-addr-conf-preset.uxc-addr-conf-active b { color: #000 !important; }   /* black on gold in dark; span + b explicit so inheritance cannot lose (operator 8/22) */
/* Label-on-top for the card + globals confirmation fields (desktop too). */
.uxc-addr-card .uxc-input, .uxc-addr-stacked .uxc-input { display: block; }
.uxc-addr-card .uxc-input > span, .uxc-addr-stacked .uxc-input > span { display: block; margin-bottom: 5px; }
.uxc-addr-card-note { font-size: 12px; color: var(--uxc-text-muted); margin-top: 4px; }
@media (max-width: 768px) {
  .uxc-addr-settings-text { display: none; }
  /* Two buttons per row, each half-width and unable to overflow (was: stacked column at width:100%, which overflowed via padding + white-space:nowrap). */
  .uxc-addr-card-actions { flex-wrap: wrap; }
  .uxc-addr-card-actions button { flex: 1 1 0; min-width: 0; box-sizing: border-box; justify-content: center; white-space: normal; }
}

/* ===== Dashboard search trigger + Ctrl+K command palette ===== */
.uxc-info.uxc-dashboard-header { justify-content: flex-start !important; }
.uxc-cmd-search-trigger { flex: 1 1 auto; display: flex; align-items: center; gap: 8px; padding: 0 14px; min-width: 60px; color: var(--uxc-text-muted, #999); cursor: pointer; transition: background .15s; align-self: stretch; }
.uxc-cmd-search-trigger:hover { background: #e8e8e8; color: var(--uxc-text-primary, #333); }
.uxc-cmd-search-trigger > span { flex: 1 1 auto; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; }
.uxc-cmd-kbd { flex: 0 0 auto; font-family: inherit; font-size: 11px; padding: 2px 6px; border: 1px solid var(--uxc-border-color, #ddd); border-radius: 4px; color: var(--uxc-text-muted, #999); background: rgba(0,0,0,0.03); }
.uxc-dashboard-store-slot:not(:empty) { border-left: 1px solid var(--uxc-border-color, #e6e6e6); }
.uxc-cmd-palette { position: fixed; inset: 0; z-index: 1000001; display: flex; align-items: flex-start; justify-content: center; padding-top: 12vh; }
.uxc-cmd-palette[hidden] { display: none; }
.uxc-cmd-palette-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,0.5); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); cursor: pointer; }
.uxc-cmd-palette-panel { position: relative; width: min(640px, 92vw); max-height: 60vh; background: #fff; border: 1px solid var(--uxc-border-color, #e6e6e6); border-radius: 12px; box-shadow: 0 20px 60px rgba(0,0,0,0.3); overflow: hidden; display: flex; flex-direction: column; }
.uxc-dark-mode .uxc-cmd-palette-panel { background: #000000; border-color: #333; }
.uxc-cmd-input-wrap { display: flex; align-items: center; gap: 10px; padding: 14px 16px; border-bottom: 1px solid var(--uxc-border-color, #e6e6e6); }
.uxc-cmd-input-wrap svg { flex: 0 0 auto; color: var(--uxc-text-muted, #999); }
#uxc-cmd-input { flex: 1 1 auto; border: none; outline: none; font-size: 16px; background: transparent; color: inherit; }
#uxc-cmd-input::placeholder { color: var(--uxc-text-muted, #999); }
.uxc-cmd-input-wrap kbd { flex: 0 0 auto; font-size: 11px; padding: 2px 6px; border: 1px solid var(--uxc-border-color, #ddd); border-radius: 4px; color: var(--uxc-text-muted, #999); cursor: pointer; }
.uxc-cmd-results { overflow-y: auto; padding: 6px 0; }
.uxc-cmd-group-label { font-size: 11px; text-transform: uppercase; letter-spacing: .04em; color: var(--uxc-text-muted, #999); padding: 8px 16px 4px; font-weight: 600; }
.uxc-cmd-row { display: flex; align-items: center; gap: 10px; padding: 8px 16px; cursor: pointer; font-size: 14px; }
/* Palette hover = gold text/icons (no fill); the ACTIVE state keeps its fill (keyboard selection). */
.uxc-cmd-row:hover { background: transparent; color: var(--uxc-accent); }
.uxc-cmd-row:hover svg { color: var(--uxc-accent); }
.uxc-cmd-row.uxc-cmd-active { background: rgba(0,0,0,0.06); }
.uxc-dark-mode .uxc-cmd-row:hover { background: transparent; color: var(--uxc-accent); }
.uxc-dark-mode .uxc-cmd-row:hover svg { color: var(--uxc-accent); }
.uxc-dark-mode .uxc-cmd-row.uxc-cmd-active { background: rgba(255,255,255,0.08); }
.uxc-cmd-row-label { flex: 1 1 auto; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.uxc-cmd-row-sub { flex: 0 0 auto; font-size: 12px; color: var(--uxc-text-muted, #999); max-width: 200px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.uxc-cmd-type-tag { flex: 0 0 auto; font-size: 10px; text-transform: uppercase; padding: 1px 5px; border-radius: 3px; background: rgba(0,0,0,0.06); color: var(--uxc-text-muted, #999); }
.uxc-dark-mode .uxc-cmd-type-tag { background: rgba(255,255,255,0.1); }
.uxc-cmd-empty { padding: 24px 16px; text-align: center; color: var(--uxc-text-muted, #999); font-size: 14px; }
@media (max-width: 767px) { .uxc-cmd-palette { padding-top: 0; align-items: flex-end; } .uxc-cmd-palette-panel { width: 100%; max-width: 100%; max-height: 80vh; border-radius: 12px 12px 0 0; } }

/* ===== Avatar dropdown (inside the dashboard header) ===== */
.uxc-account-menu { position: relative; flex: 0 0 auto; align-self: stretch; display: flex; align-items: center; justify-content: center; padding: 0 6px; border-left: 1px solid var(--uxc-border-color, #e6e6e6); opacity: 0; transition: opacity .15s ease; }
/* The account menu is appended as the last cell of every active area's .uxc-page-header on desktop.
   Negate the header's 12px gap so the avatar sits flush against the actions button (connected toolbar
   look, matching the .uxc-nav-wide transactions header which already uses gap:0). Excluded from nav-wide
   (gap:0) so it isn't pulled into an overlap there. */
.uxc-page-header:not(.uxc-nav-wide) > .uxc-account-menu { margin-left: 0; }
.uxc-account-btn { width: 28px; height: 28px; border-radius: 50%; border: 1px solid var(--uxc-border-color, #ddd); overflow: hidden; background: transparent; cursor: pointer; padding: 0; display: flex; align-items: center; justify-content: center; transition: border-color .15s; }
.uxc-account-btn:hover { border-color: var(--uxc-text-muted, #999); }
.uxc-account-avatar { width: 100%; height: 100%; object-fit: cover; display: block; }
.uxc-account-dropdown { position: absolute; top: calc(100% + 6px); right: 8px; min-width: 220px; background: #fff; border: 1px solid var(--uxc-border-color, #e6e6e6); border-radius: 12px; box-shadow: 0 12px 36px rgba(0,0,0,0.25); padding: 6px; display: none; }
.uxc-account-dropdown.uxc-open { display: block; }
.uxc-dark-mode .uxc-account-dropdown { background: #000; border-color: #333; }
.uxc-account-id { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 8px 10px; margin-bottom: 4px; text-decoration: none; color: inherit; border-radius: 7px; }
.uxc-account-id:hover { background: transparent; color: var(--uxc-accent); }
.uxc-dark-mode .uxc-account-id:hover { background: transparent; color: var(--uxc-accent); }
.uxc-account-id > div { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.uxc-account-ext { flex: 0 0 auto; color: var(--uxc-text-muted, #999); opacity: .7; }
.uxc-account-email { font-size: 14px; font-weight: 600; color: var(--uxc-text-primary, #1a1a1a); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.uxc-dark-mode .uxc-account-email { color: #fff; }
.uxc-account-role { font-size: 12px; color: var(--uxc-text-muted, #999); text-transform: capitalize; }
/* Balance card (account dropdown): BALANCE header, Credit row, UCASH row - 3 lines total.
   Rows keep 26px clear of the topup.js + icon parked top-right; digits are tabular so the
   two 8-decimal values align. Credit = accent, UCASH = primary text. */
.uxc-account-balance { display: flex; flex-direction: column; padding: 9px 10px 7px; border: 1px solid var(--uxc-border-color, #e6e6e6); border-radius: 7px; margin-bottom: 4px; cursor: pointer; text-decoration: none; transition: border-color .15s; }
.uxc-account-balance:hover { background: transparent; border-color: var(--uxc-accent); }
.uxc-account-balance-k { font-size: 10px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: var(--uxc-text-primary, #1a1a1a); }
.uxc-account-balance-row { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin-top: 4px; }
.uxc-account-balance-row-ucash { border-top: 1px solid var(--uxc-border-color, #e6e6e6); margin-top: 5px; padding-top: 6px; }
.uxc-account-balance-lbl { font-size: 11px; font-weight: 500; color: var(--uxc-text-primary, #1a1a1a); white-space: nowrap; }
.uxc-account-balance-value { font-size: 13px; font-weight: 600; color: var(--uxc-text-primary, #1a1a1a); text-align: right; font-variant-numeric: tabular-nums; }
.uxc-account-item { display: flex; align-items: center; gap: 9px; padding: 9px 10px; border-radius: 7px; box-sizing: border-box; color: var(--uxc-text-primary, #333); text-decoration: none; font-size: 13.5px; font-weight: 500; cursor: pointer; transition: background .12s; }
.uxc-account-item:hover { background: transparent; color: var(--uxc-accent); }
.uxc-account-item:hover svg { color: var(--uxc-accent); }
.uxc-dark-mode .uxc-account-item { color: #e0e0e0; }
.uxc-dark-mode .uxc-account-item:hover { background: rgba(255,255,255,0.08); }
button.uxc-account-item { background: transparent; border: 0; width: 100%; text-align: left; font-family: inherit; }
.uxc-account-item svg { width: 17px; height: 17px; flex-shrink: 0; opacity: .8; }
.uxc-account-item .uxc-account-switch { margin-left: auto; width: 13px; height: 13px; flex-shrink: 0; color: var(--uxc-text-muted, #999); opacity: .55; }

/* Una assistant widget (Staff page): collapsible card + segmented on/off/inherit */
.uxc-una-matrix{ margin:16px 0; }
.uxc-una-matrix-head{ cursor:pointer; user-select:none; display:flex; align-items:center; justify-content:space-between; }
.uxc-una-matrix-toggle{ margin-left:8px; color:var(--uxc-text-muted,#999); font-size:24px; line-height:1; transition:transform .2s; }
.uxc-una-matrix.uxc-una-matrix-collapsed .uxc-una-matrix-body{ display:none; }
.uxc-una-matrix.uxc-una-matrix-collapsed .uxc-una-matrix-head{ margin-bottom:0; padding-bottom:0; border-bottom:none; }
.uxc-una-matrix.uxc-una-matrix-collapsed .uxc-una-matrix-toggle{ transform:rotate(-90deg); }
.uxc-una-row{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding:6px 0; }
.uxc-una-label{ font-size:14px; font-weight:500; color:var(--uxc-text-primary,#1a1a1a); }
.uxc-una-label em{ opacity:.6; font-style:normal; font-size:12px; margin-left:4px; }
.uxc-una-group{ font-size:11px; text-transform:uppercase; letter-spacing:.04em; color:var(--uxc-text-muted,#999); margin:12px 0 2px; }
.uxc-una-group:first-child{ margin-top:0; }
.uxc-una-seg{ display:inline-flex; border:1px solid var(--uxc-border-color,#b0b0b0); border-radius:8px; overflow:hidden; }
.uxc-una-seg-opt{ cursor:pointer; border:0; background:transparent; color:var(--uxc-text-secondary,#6b6b6b); font:inherit; font-size:12px; font-weight:600; padding:6px 11px; }
.uxc-una-seg-opt:not(:disabled):hover{ background:var(--uxc-hover-bg,rgba(0,0,0,.05)); }
.uxc-una-seg-opt.active{ background:var(--uxc-accent); color:#fff; }
.uxc-dark-mode .uxc-una-seg-opt.active{ color:#1a1a1a; }
.uxc-una-seg-opt:disabled{ opacity:.45; cursor:not-allowed; }

/* Filter panel rendered as a BODY card below the header (pushes content down, scrolls with the page),
   instead of expanding the sticky header. Applies where .uxc-nav-filters is a direct child of a [data-area]
   (e.g. transactions, moved out of .uxc-page-header). */
[data-area] > .uxc-nav-filters.uxc-active,
[data-area] > .uxc-download-filters.uxc-active {
  margin: 12px 0;
  padding: 16px 20px;
  background: transparent;
  border: 1px solid var(--uxc-border-color);
  border-radius: 0;
  box-shadow: none;
}
@media (max-width: 767px) {
  /* Mobile: the transactions filter card flattens to a full-bleed panel (chip rows, border-bottom only).
     Must live AFTER the card rule above - same specificity, later wins. */
  [data-area] > .uxc-nav-filters.uxc-active,
  [data-area] > .uxc-download-filters.uxc-active {
    margin: 15px 0 0;
    padding: 0 0 15px;
    border: 1px solid var(--uxc-border-color);
    box-shadow: none;
    box-sizing: border-box;
  }
}
/* Right-justify controls in single-control setting rows: checkboxes, selects, currency toggle (title left, control right). */
.uxc-input[data-type="checkbox"] .uxc-setting-input,
.uxc-input[data-type="select"] .uxc-setting-input,
.uxc-input[data-type="currency-toggle"] .uxc-setting-input { display: flex; justify-content: flex-end; }
/* Multi-input sub-row that is a lone checkbox (e.g. logo display toggles): title left, checkbox right. */
.uxc-input[data-type="multi-input"] .uxc-setting-input > [data-type="checkbox"] { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
/* Mobile drawer console-mode row (#uxc-nav-mode, beside the theme row): the drawer has no
   avatar dropdown, so this is the mobile Simple <-> Full switch (console-mode.js binds + syncs
   it; the label shows the CURRENT mode like the theme row). Desktop keeps the avatar-dropdown
   toggle only. nav-gate pass 2 hides unknown ids in basic mode - 'mode' sits in uxc_basic_nav()
   or basic mode would hide the very switch that leaves it. */
@media (min-width: 768px) { #uxc-nav-mode { display: none !important; } }
#uxc-nav-mode svg { width: 22px; height: 22px; }
/* Mobile drawer: search bar pinned below the profile bar (fixed sliding panel, full-width, doesn't scroll). Mirrors the desktop search trigger (icon + Search... + Ctrl K on the right). */
.uxc-sidebar > .uxc-mobile-search { position: fixed; top: calc(var(--uxc-beta-banner-h, 0px) + 82px); right: 0; width: 321px; height: 30px; display: flex !important; align-items: center; gap: 8px; padding: 0 14px !important; box-sizing: border-box; background: #ffffff; color: var(--uxc-text-muted, #999); font-size: 14px; cursor: pointer; border-left: 1px solid var(--uxc-border-color, #e6e6e6); border-right: 1px solid var(--uxc-border-color, #e6e6e6); border-bottom: 1px solid var(--uxc-border-color, #e6e6e6); box-shadow: -4px 0 24px rgba(0,0,0,0.18); transform: translateX(100%); transition: transform 0.3s ease; z-index: 10000001; }
.uxc-dark-mode .uxc-sidebar > .uxc-mobile-search { background: #000000; }
.uxc-sidebar > .uxc-mobile-search:hover { background: #e8e8e8; color: var(--uxc-text-primary, #333); }
.uxc-sidebar > .uxc-mobile-search > span { display: inline; }
.uxc-sidebar > .uxc-mobile-search svg { width: 16px; height: 16px; flex-shrink: 0; }
.uxc-sidebar > .uxc-mobile-search .uxc-cmd-kbd { margin-left: auto; }
/* Search triggers: visible hover in both themes (light grey / dark grey) instead of the near-transparent --uxc-hover-bg. */
.uxc-dark-mode .uxc-cmd-search-trigger:hover { background: #262626; color: #fff; }
.uxc-dark-mode .uxc-sidebar > .uxc-mobile-search:hover { background: #262626; color: #fff; }
/* Dashboard stat tiles: decorative background icon (right side, tilted +30deg, brand gold ~30% opacity), relevant per tile. */
.uxc-stat-tile { position: relative; overflow: hidden; }
.uxc-stat-tile-bg { position: absolute; right: 10px; bottom: 11px; width: 78px; height: 78px; color: var(--uxc-accent); opacity: 0.23; transform: rotate(0deg); pointer-events: none; z-index: 0; }
.uxc-stat-tile-bg svg { width: 100%; height: 100%; display: block; }
.uxc-stat-tile > .uxc-stat-tile-label, .uxc-stat-tile > .uxc-stat-tile-value { position: relative; z-index: 1; }
.uxc-dark-mode .uxc-stat-tile-bg { color: var(--uxc-accent); opacity: 0.105; }
/* Dashboard Credit Balance Activity table (now a real .uxc-table; chip + amount colors only). */
.uxc-dashboard-balance-activity .uxc-ba-account { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; padding: 2px 6px; border: 1px solid var(--uxc-border-color, #e6e6e6); color: var(--uxc-text-secondary, #6b6b6b); display: inline-block; }
/* Running balance shown small under the amount (replaces the old After column). */
.uxc-dashboard-balance-activity .uxc-ba-after { font-size: 11px; font-weight: 400; color: var(--uxc-text-muted, #999); margin-top: 2px; white-space: normal; }
/* Account tables: every row a fully bordered box with breathing room between rows
   (desktop; the <=768px card-stack rules later in the file neutralize the td borders). */
#uxc-table-subscriptions, #uxc-table-onetime, #uxc-table-subscription-history, #uxc-table-payments, #uxc-table-ledger, #uxc-table-ucash-history, #uxc-table-balance-activity { border-collapse: separate; border-spacing: 0 10px; }
#uxc-table-subscriptions td, #uxc-table-onetime td, #uxc-table-subscription-history td, #uxc-table-payments td, #uxc-table-ledger td, #uxc-table-ucash-history td, #uxc-table-balance-activity td { border-top: 1px solid var(--uxc-border-color, #e6e6e6) !important; border-bottom: 1px solid var(--uxc-border-color, #e6e6e6) !important; }
#uxc-table-subscriptions td:first-child, #uxc-table-onetime td:first-child, #uxc-table-subscription-history td:first-child, #uxc-table-payments td:first-child, #uxc-table-ledger td:first-child, #uxc-table-ucash-history td:first-child, #uxc-table-balance-activity td:first-child { border-left: 1px solid var(--uxc-border-color, #e6e6e6) !important; }
#uxc-table-subscriptions td:last-child, #uxc-table-onetime td:last-child, #uxc-table-subscription-history td:last-child, #uxc-table-payments td:last-child, #uxc-table-ledger td:last-child, #uxc-table-ucash-history td:last-child, #uxc-table-balance-activity td:last-child { border-right: 1px solid var(--uxc-border-color, #e6e6e6) !important; }
/* Subscriptions tables: money column and trailing cell right-aligned (Checkouts parity). */
#uxc-table-subscriptions th[data-field="billed"], #uxc-table-subscriptions td[data-label="Billed"],
#uxc-table-onetime th[data-field="price"], #uxc-table-onetime td[data-label="Price"],
#uxc-table-subscription-history th[data-field="amount"], #uxc-table-subscription-history td[data-label="Amount"],
#uxc-table-subscriptions td:last-child, #uxc-table-onetime td:last-child, #uxc-table-subscription-history td:last-child { text-align: right; }
.uxc-dashboard-balance-activity .uxc-ba-in { color: #2e7d32; }
.uxc-dashboard-balance-activity .uxc-ba-out { color: #c0392b; }

/* Site-wide admin footer (every page), with a good margin above. */
.uxc-admin-footer { margin-top: 120px; margin-bottom: -24px; padding: 18px 0 8px; color: var(--uxc-text-muted, #999); font-size: 12px; display: flex; gap: 14px; flex-wrap: wrap; align-items: center; }
.uxc-admin-footer-ver { opacity: .8; }
/* UCASH History settings section: small bottom margin on mobile only. */
@media (max-width: 768px) { [id^="account-section-"] { margin-bottom: 18px; } }

/* === cloud/account.php account-section styles (moved here so admin.css is the single source of truth; scoped to #uxc-table-* / .uxc-ledger-* / account elements) === */
.uxc-custom-amount-section {
            margin-top: 20px;
        }

        .uxc-custom-amount-row {
            display: flex;
            gap: 10px;
            margin-top: 10px;
        }

        .uxc-custom-amount-row input {
            flex: 1;
            min-width: 150px;
            max-width: 200px;
            border: 1px solid #888888;
            border-radius: 0;
            padding: 0 12px;
            font-size: 13px;
            line-height: 35px;
            background-color: transparent;
            color: #464646;
            box-shadow: none;
            transition: all 0.4s;
        }

        .uxc-custom-amount-row input:focus {
            border: 1px solid var(--uxc-accent);
            box-shadow: 0 0 5px rgba(39, 255, 222, 0.2);
            background-color: transparent;
            color: #464646;
            outline: none;
        }

        .uxc-custom-amount-row .uxc-btn {
            flex-shrink: 0;
            white-space: nowrap;
        }

        #uxc-payment-box {
            display: grid;
            grid-template-columns: 1fr 1fr 1fr 1fr;
            grid-gap: 10px;
            max-width: 600px;
            margin-top: 10px;
        }

        #uxc-payment-box a {
            color: #000;
            text-decoration: none;
            border: 1px solid #888888;
            border-radius: 0;
            padding: 20px 10px;
            font-weight: 500;
            letter-spacing: 0.3px;
            cursor: pointer;
            text-align: center;
            transition: all 0.3s;
        }

        /* Dark mode support */

        .uxc-dark-mode .uxc-custom-amount-row input {
            border-color: var(--uxc-border-color);
            color: var(--uxc-text-primary);
            background-color: transparent;
        }

        .uxc-dark-mode .uxc-custom-amount-row input:focus {
            border-color: var(--uxc-accent);
            background-color: transparent;
            color: var(--uxc-text-primary);
        }

        @media (max-width: 420px) {
            #uxc-custom-amount-btn span {
                display: none;
            }

            #uxc-custom-amount-btn {
                padding: 0;
                width: 42px;
                height: 42px;
                display: flex;
                align-items: center;
                justify-content: center;
            }

            #uxc-custom-amount-btn i {
                margin: 0;
                transform: none;
            }
        }

        .uxc-account-action-btn {
            display: inline-block;
            padding: 10px 20px;
            border: 1px solid #888888;
            border-radius: 0;
            background: transparent;
            color: #464646;
            text-decoration: none;
            cursor: pointer;
            transition: all 0.3s;
        }

        .uxc-account-action-btn:hover {
            border-color: var(--uxc-accent);
            color: var(--uxc-accent);
        }

        .uxc-dark-mode .uxc-account-action-btn {
            border-color: var(--uxc-border-color);
            color: var(--uxc-text-primary);
        }

        .uxc-dark-mode .uxc-account-action-btn:hover {
            border-color: var(--uxc-accent);
            color: var(--uxc-accent);
        }

        #uxc-table-payments {
            border-collapse: separate;
            border-spacing: 0 10px;
            margin-top: 0;
            width: 100%;
        }

        #uxc-table-payments td {
            border: 1px solid #888888;
            padding: 15px;
        }

        #uxc-table-payments td:nth-child(2) {
            border-left: none;
            border-right: none;
        }

        #uxc-table-payments td:nth-child(1) {
            border-right: none;
        }

        #uxc-table-payments td:nth-child(3) {
            border-left: none;
        }

        #uxc-table-payments th {
            border-bottom: 1px solid #888888;
            padding: 9px 15px;
        }

        .uxc-dark-mode #uxc-table-payments td {
            border-color: var(--uxc-border-color);
        }

        .uxc-dark-mode #uxc-table-payments th {
            border-bottom-color: var(--uxc-border-color);
        }

        /* Mobile: lock the account tables to the viewport; let timestamps/descriptions wrap. */
        @media (max-width: 768px) {
            #uxc-table-payments, #uxc-table-ledger, #uxc-table-ucash-history { table-layout: fixed; width: 100%; }
            #uxc-table-payments td, #uxc-table-payments th,
            #uxc-table-ledger td, #uxc-table-ledger th,
            #uxc-table-ucash-history td, #uxc-table-ucash-history th { overflow-wrap: anywhere; white-space: normal; }
            /* The global th[data-field="id"] is 15px (for the transactions table); under fixed layout that
               starves the payment-history ID column. Reset it so the column shares the width. */
            #uxc-table-payments th[data-field="id"] { width: auto; max-width: none; }
        }

        .uxc-account-list {
            margin-top: 15px;
        }

        /* Pagination */
        .uxc-pagination {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 4px;
        }
        .uxc-pagination-btn {
            min-width: 36px;
            height: 36px;
            padding: 0;
            border: 1px solid #d4d4d4;
            background: none;
            color: #464646;
            font-size: 14px;
            font-weight: 500;
            cursor: pointer;
            transition: all 0.2s;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .uxc-pagination-btn:hover {
            border-color: var(--uxc-accent);
            color: var(--uxc-accent);
        }
        .uxc-pagination-btn.uxc-pagination-active {
            background: var(--uxc-accent);
            border-color: var(--uxc-accent);
            color: #fff;
        }
        .uxc-pagination-prev, .uxc-pagination-next {
            font-size: 18px;
            font-weight: 600;
        }
        .uxc-pagination-btn:disabled {
            opacity: 0.4;
            cursor: not-allowed;
        }
        .uxc-page-hidden {
            display: none !important;
        }
        .uxc-dark-mode .uxc-pagination-btn {
            border-color: var(--uxc-border-color);
            color: var(--uxc-text-primary);
        }
        .uxc-dark-mode .uxc-pagination-btn:hover {
            border-color: var(--uxc-accent);
            color: var(--uxc-accent);
        }
        .uxc-dark-mode .uxc-pagination-btn.uxc-pagination-active {
            background: var(--uxc-accent);
            border-color: var(--uxc-accent);
            color: #fff;
        }

        .uxc-ucash-box { margin-bottom: 15px; }
        .uxc-ucash-redeem-row { display: flex; gap: 10px; margin-top: 14px; max-width: 400px; }
        .uxc-ucash-redeem-row input {
            flex: 1; max-width: 200px; border: 1px solid #888888; border-radius: 0;
            padding: 0 12px; font-size: 13px; line-height: 35px; background-color: transparent; color: #464646;
        }
        .uxc-ucash-redeem-row input:focus { border-color: var(--uxc-accent); outline: none; }
        .uxc-dark-mode .uxc-ucash-redeem-row input { border-color: var(--uxc-border-color); color: var(--uxc-text-primary); }
        .uxc-dark-mode .uxc-ucash-redeem-row input:focus { border-color: var(--uxc-accent); color: var(--uxc-text-primary); }
        .uxc-add-ucash-box { margin-bottom: 24px; }

        /* Modal Overlay */
        .uxc-modal-overlay {
            display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%;
            background: rgba(0, 0, 0, 0.5); z-index: 9998; align-items: center; justify-content: center;
        }
        .uxc-modal-overlay.active { display: flex; }
        .uxc-modal-content {
            background: #fff; padding: 30px; border-radius: 8px; max-width: 400px; width: 90%;
            text-align: center; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
        }
        .uxc-modal-icon { font-size: 48px; margin-bottom: 15px; }
        .uxc-modal-icon.success { color: #28a745; }
        .uxc-modal-icon.error { color: #dc3545; }
        .uxc-modal-title { font-size: 18px; font-weight: 600; color: #333; margin-bottom: 10px; }
        .uxc-modal-message { font-size: 14px; color: #666; margin-bottom: 20px; line-height: 1.5; }
        .uxc-modal-actions { display: flex; align-items: center; justify-content: center; gap: 12px; }
        .uxc-modal-close {
            background: var(--uxc-accent); color: #fff; border: none; padding: 10px 24px; border-radius: 4px;
            font-size: 14px; cursor: pointer; font-weight: 500; transition: background 0.2s;
        }
        .uxc-modal-close:hover { background: #8a6a3f; }
        .uxc-modal-cancel {
            background: transparent; color: #666; border: 1px solid #ccc; padding: 10px 24px; border-radius: 4px;
            font-size: 14px; cursor: pointer; font-weight: 500; transition: all 0.2s;
        }
        .uxc-modal-cancel:hover { color: #333; border-color: #999; }
        .uxc-modal-icon.warning { color: #f0ad4e; }
        .uxc-dark-mode .uxc-modal-content { background: #2d2d2d; }
        .uxc-dark-mode .uxc-modal-title { color: var(--uxc-text-primary); }
        .uxc-dark-mode .uxc-modal-message { color: #aaa; }
        .uxc-dark-mode .uxc-modal-cancel { color: #aaa; border-color: #555; }
        .uxc-dark-mode .uxc-modal-cancel:hover { color: #fff; border-color: #888; }
        .uxc-ucash-payment-box { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-gap: 10px; max-width: 600px; margin-top: 10px; }
        @media (max-width: 768px) { .uxc-ucash-payment-box { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
        .uxc-ucash-payment-box a { color: #000; text-decoration: none; border: 1px solid #888888; border-radius: 0; padding: 20px 10px; font-weight: 500; letter-spacing: 0.3px; cursor: pointer; text-align: center; transition: all 0.3s; overflow-wrap: anywhere; }
        .uxc-dark-mode .uxc-ucash-payment-box a { color: var(--uxc-text-primary); border-color: var(--uxc-border-color); }
        @media (max-width: 420px) { #uxc-ucash-custom-amount-btn span { display: none; } #uxc-ucash-custom-amount-btn { padding: 0; width: 42px; height: 42px; display: flex; align-items: center; justify-content: center; } #uxc-ucash-custom-amount-btn i { margin: 0; transform: none; } }

.uxc-ledger-positive {
            color: #2e7d32;
        }
        .uxc-ledger-negative {
            color: #c62828;
        }
        #uxc-table-ledger {
            border-collapse: separate;
            border-spacing: 0 10px;
            margin-top: 0;
            width: 100%;
        }
        #uxc-table-ledger td {
            border: 1px solid #888888;
            padding: 15px;
            font-size: 13px;
        }
        #uxc-table-ledger td:nth-child(2) {
            border-left: none;
            border-right: none;
        }
        #uxc-table-ledger td:nth-child(1) {
            border-right: none;
        }
        #uxc-table-ledger td:nth-child(3),
        #uxc-table-ledger th:nth-child(3) {
            border-left: none;
            text-align: right;
        }
        #uxc-table-ledger th {
            border-bottom: 1px solid #888888;
            padding: 9px 15px;
        }
        .uxc-dark-mode #uxc-table-ledger td {
            border-color: var(--uxc-border-color);
        }
        .uxc-dark-mode #uxc-table-ledger th {
            border-bottom-color: var(--uxc-border-color);
        }
        .uxc-dark-mode .uxc-ledger-positive {
            color: #66bb6a;
        }
        .uxc-dark-mode .uxc-ledger-negative {
            color: #ef5350;
        }

#uxc-table-ucash-history {
            border-collapse: separate;
            border-spacing: 0 10px;
            margin-top: 0;
            width: 100%;
        }
        #uxc-table-ucash-history td {
            border: 1px solid #888888;
            padding: 15px;
        }
        #uxc-table-ucash-history td:nth-child(2) {
            border-left: none;
            border-right: none;
        }
        #uxc-table-ucash-history td:nth-child(1) {
            border-right: none;
        }
        #uxc-table-ucash-history td:nth-child(3),
        #uxc-table-ucash-history th:nth-child(3) {
            border-left: none;
            text-align: right;
        }
        #uxc-table-ucash-history th {
            border-bottom: 1px solid #888888;
            padding: 9px 15px;
        }
        .uxc-dark-mode #uxc-table-ucash-history td {
            border-color: var(--uxc-border-color);
        }
        .uxc-dark-mode #uxc-table-ucash-history th {
            border-bottom-color: var(--uxc-border-color);
        }
/* Mobile account-table cards: FORCE label-left / value-right (date right-justified), beating the merged desktop td rules. */
@media (max-width: 768px) {
  #uxc-table-subscriptions td, #uxc-table-onetime td, #uxc-table-subscription-history td, #uxc-table-payments td, #uxc-table-ledger td, #uxc-table-ucash-history td, #uxc-table-balance-activity td { display: flex !important; flex-direction: row !important; justify-content: space-between !important; align-items: center !important; width: 100% !important; text-align: right !important; padding: 4px 0 !important; border: none !important; }
  #uxc-table-subscriptions td::before, #uxc-table-onetime td::before, #uxc-table-subscription-history td::before, #uxc-table-payments td::before, #uxc-table-ledger td::before, #uxc-table-ucash-history td::before, #uxc-table-balance-activity td::before { content: attr(data-label) !important; margin-right: 12px !important; text-align: left !important; }
  /* Desktop side-borders ride td:first/last-child at ID+pseudo specificity, so the border:none
     above never beats them and mobile cards showed a stray left border on Date / right on Amount. */
  #uxc-table-subscriptions td:first-child, #uxc-table-onetime td:first-child, #uxc-table-subscription-history td:first-child, #uxc-table-payments td:first-child, #uxc-table-ledger td:first-child, #uxc-table-ucash-history td:first-child, #uxc-table-balance-activity td:first-child { border-left: none !important; }
  #uxc-table-subscriptions td:last-child, #uxc-table-onetime td:last-child, #uxc-table-subscription-history td:last-child, #uxc-table-payments td:last-child, #uxc-table-ledger td:last-child, #uxc-table-ucash-history td:last-child, #uxc-table-balance-activity td:last-child { border-right: none !important; }
  /* Amount cell wraps: amount right-justified beside the label, Balance sub-line on its own
     right-justified row directly underneath (flex defaults to nowrap, which squeezed it alongside). */
  #uxc-table-balance-activity td { flex-wrap: wrap; }
  #uxc-table-balance-activity td .uxc-ba-after { flex-basis: 100%; text-align: right; margin-top: 0; }
  /* Transactions cards: the legacy max-width:1024px block re-boxes td's as table-cell !important
     with row borders, and that bleeds into phone widths, scrambling the cards (cells side by side
     at auto width, stray inner borders). Re-force the card stack below 768px so these cards match
     the other tables. */
  #uxc-table-transactions td { display: flex !important; flex-direction: row !important; flex-wrap: wrap; justify-content: space-between !important; align-items: center !important; width: 100% !important; max-width: 100% !important; text-align: right !important; padding: 4px 0 !important; border: none !important; overflow: visible !important; }
  #uxc-table-transactions td::before { content: attr(data-label) !important; margin-right: 12px !important; text-align: left !important; }
  /* Hover paints the WHOLE card: the 1024px block paints the td strips, which leaves the card's
     padding ring unpainted (an inset grey band). Card carries the hover, td's go transparent. */
  #uxc-table-transactions tr:hover { background-color: var(--uxc-hover-bg, rgba(0, 0, 0, 0.05)); }
  #uxc-table-transactions tr:hover td { background-color: transparent !important; }
  /* Checkouts/balances/payments cards: the same 1024px block sets td padding 15px, which also
     bleeds into phone widths and puffs up the card rows; restore the compact card padding. */
  #uxc-table-checkouts td, #uxc-table-balances td, #uxc-table-payments td { padding: 4px 0 !important; }
  /* Checkouts cards breathe a bit more at the top (operator 8/23): 12px -> 20px, mobile only. */
  #uxc-table-checkouts tr { padding: 20px 12px 12px; }
  /* Balances cards match the other tables (operator 8/23): 20px card top on the coin rows
     (subs keep their inner-row spacing) and no desktop address indent inside the label/value rows. */
  #uxc-table-balances tr:not(.uxc-balance-sub) { padding: 12px; margin-bottom: 8px; }   /* cards carry a bottom margin only (operator 8/23) */
  /* Balance cell = amount + usd: like the other cards, amount right-justified on the label
     line and the usd value rides its own right-justified line underneath (flex defaults to
     nowrap, which squeezed both into a narrow column). */
  #uxc-table-balances td { flex-wrap: wrap; }
  /* usd rides BESIDE the amount on the same line (operator 8/23): the amount keeps the
     auto left margin (anchors the pair right), usd follows it with a small gap. */
  #uxc-table-balances td .uxc-text { margin-left: 8px; }
  /* Sub rows read as plain card lines like every other table (operator 8/23): no tint,
     full-weight labels. The card box (parent opens, last sub closes) and group dividers stay. */
  #uxc-table-balances tr.uxc-balance-sub { background: transparent; }
  #uxc-table-balances tr.uxc-balance-sub td::before { font-weight: 600; }
  /* Operator follow-ups (8/23): the grey band lives on the ROW so it spans the card
     edge-to-edge (cells go transparent, inset via cell padding instead of row padding),
     with a small top margin between bands; usd sub-line stays 11px. */
  #uxc-table-balances tr.uxc-balance-sub { background: rgba(127, 127, 127, 0.06); padding: 0; margin-bottom: 8px; }   /* bottom margin only, matching the cards (operator 8/23) */
  #uxc-table-balances tr.uxc-balance-sub td { background: transparent; padding: 8px 12px !important; }
  #uxc-table-balances td .uxc-text { font-size: 11px; position: relative; top: -3px; }   /* optically centers the small usd against the amount (operator 8/23) */
  /* Values stay glued to the right edge even when they wrap to their own line
     (a lone wrapped item under space-between would sit left, leaving the right
     side of the row empty). */
  #uxc-table-balances td > div { margin-left: auto; }
  #uxc-table-balances tr.uxc-balance-sub .uxc-address-label { padding-left: 0; }
  /* Balance cells lose their top padding so the amount aligns with the row's first line
     (operator 8/23). Placed after the band rule: same specificity, later wins the !important tie. */
  #uxc-table-balances tr td[data-label="Balance"] { padding-top: 0 !important; }
  /* Coin icons 25% smaller on phones (intrinsic ~24px -> 18px). */
  #uxc-table-balances td[data-label="Cryptocurrency"] img { width: 18px; height: 18px; }
  /* Balance header closes with the card rhythm; the intro's top margin drops 70% (20 -> 6px). */
  [data-area="balances"] .uxc-balance-header { margin-bottom: 8px; }
  [data-area="balances"] > .uxc-transactions-info { margin-top: 6px; }
  /* First checkout field sits a touch lower on phones (operator 8/23): 4px -> 14px. */
  #uxc-checkouts-form .uxc-input#uxc-checkout-title { margin-top: 14px; }
}

/* Native form controls (the language <select> option popup, date pickers, scrollbars) follow the
   console theme. color-scheme is the reliable lever; the #uxc-account-lang option rules below are
   an explicit fallback for browsers that don't honor color-scheme on <option>. The closed select
   stays transparent (inline style) so it blends into the account dropdown (#fff / #000). */
html { color-scheme: light; }
html.uxc-dark-mode { color-scheme: dark; }
/* Operator law (8/20, re-applied 9/9): EVERY dropdown follows the console theme. The explicit
   option colors are the fallback for engines that ignore color-scheme on the OS-rendered
   <option> popup; global so every select (ob panels, settings, filters) is covered. */
select option { background-color: #ffffff; color: #1a1a1a; }
.uxc-dark-mode select option { background-color: #2a2a2a; color: #eee; }
#uxc-account-lang option { background-color: #fff; color: #1a1a1a; }
.uxc-dark-mode #uxc-account-lang option { background-color: #2a2a2a; color: #eee; }

/* RTL polish: dropdowns, modals, table labels (2026-08-06) */
/* Account button sits at the LEFT in RTL, so the dropdown must anchor left (else it overflows off-screen). */
.uxc-rtl .uxc-account-dropdown { right: auto; left: 8px; }
.uxc-rtl .uxc-account-menu { border-left: none; border-right: 1px solid var(--uxc-border-color, #e6e6e6); }
/* Modal action row: confirm on the left, cancel on the right (RTL convention). */
.uxc-rtl .uxc-modal-actions { flex-direction: row-reverse; }
/* Icon-first buttons: icon margin flips to the left. */
.uxc-rtl .uxc-btn:not(.uxc-act):not(.uxc-pos-act) > svg:first-child { margin-right: 0; margin-left: 8px; }
/* Mobile table row labels: right-aligned in RTL. */
.uxc-rtl .uxc-table td::before { text-align: right; margin-right: 0; margin-left: 12px; }
/* Page-header download divider flips to the right edge. */
.uxc-rtl .uxc-nav-wide.uxc-page-header > #uxc-checkouts-download { border-left: none; border-right: 1px solid var(--uxc-border-color, #e6e6e6); }

/* CLS: reserve the dashboard loading area to the viewport so the admin footer starts below the fold.
   When the AJAX content renders (tall), the footer was already off-screen -> no layout shift.
   Scoped to the dashboard's loading state only (uxc-loading is cleared once content renders). */
[data-area="dashboard"].uxc-loading { min-height: 100vh; }

/* Bank Payments: custom rails editor (settings area) + detail-view instruction notes */
.uxc-bank-rails-head {
  display: flex;
  align-items: center;
  gap: 15px;
  margin: 15px 0 5px 0;
}
.uxc-bank-rails-head span {
  font-weight: 600;
  font-size: 15px;
  color: #464646;
}
.uxc-bank-rails-head .uxc-bank-rail-add {
  border: 1px solid var(--uxc-border-color);
  background: transparent;
  color: #464646;
  height: 31px;
  padding: 0 15px;
  cursor: pointer;
  border-radius: 4px;
}
.uxc-bank-rail .uxc-setting-input {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.uxc-bank-field {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.uxc-bank-field span {
  font-weight: 500;
  font-size: 12px;
  color: #5c7171;
}
.uxc-bank-rail-actions {
  display: flex;
  gap: 10px;
  margin-top: 5px;
}
.uxc-bank-rail-actions button {
  border: 1px solid var(--uxc-border-color);
  background: transparent;
  color: #464646;
  height: 31px;
  padding: 0 15px;
  cursor: pointer;
  border-radius: 4px;
}
.uxc-bank-rail-actions .uxc-bank-rail-delete[data-confirm="1"] {
  border-color: #c0392b;
  color: #c0392b;
}
.uxc-bank-notes-admin {
  margin-top: 6px;
  white-space: pre-wrap;
}

/* Generic area submenus: same open mechanics as the settings submenu (accordion: the nav item
   carries uxc-open while its area is active), hidden with a collapsed sidebar, revealed by peek. */
.uxc-nav > [data-nav-submenu].uxc-open { display: flex; }
@media (min-width: 768px) {
  .uxc-sidebar.uxc-collapsed [data-nav-submenu] { display: none !important; }
}

/* Account > Sandbox tables: the same card stack as the console tables (mobile). Kept AFTER the
   desktop rules on purpose - same specificity, so the later block wins inside the media query. */
@media (max-width: 768px) {
  .uxc-sandbox-block { margin-top: 18px; }
  .uxc-sandbox-block-head { flex-wrap: wrap; }
  #uxc-table-sandbox, #uxc-table-sandbox-checkouts { display: block; width: 100%; }
  #uxc-table-sandbox thead, #uxc-table-sandbox-checkouts thead { display: none; }
  #uxc-table-sandbox tbody, #uxc-table-sandbox-checkouts tbody { display: block; }
  #uxc-table-sandbox tr, #uxc-table-sandbox-checkouts tr { display: flex; flex-wrap: wrap; border: 1px solid var(--uxc-border-color, #e6e6e6); border-radius: 0; margin-bottom: 12px; padding: 12px; }
  #uxc-table-sandbox td, #uxc-table-sandbox-checkouts td { display: flex; justify-content: space-between; align-items: center; width: 100%; border: none; padding: 4px 0; white-space: normal; text-align: right; }
  #uxc-table-sandbox td::before, #uxc-table-sandbox-checkouts td::before { content: attr(data-label); font-weight: 600; color: var(--uxc-text-muted, #999); margin-right: 12px; text-align: left; }
  #uxc-table-sandbox tr:hover td, #uxc-table-sandbox-checkouts tr:hover td { background-color: transparent; }
  /* An OPENED webhook-log cell is content, not a label/value pair: full width, left aligned. */
  .uxc-sandbox-whcell { flex-direction: column; align-items: flex-start; text-align: left; }
  .uxc-sandbox-whcell::before { content: none; }
}
  /* Mobile: the Actions row can hold 3 buttons - let them wrap instead of clipping. */
  #uxc-table-sandbox td[data-label="Actions"], #uxc-table-sandbox-checkouts td[data-label="Actions"] {
    flex-wrap: wrap;
    justify-content: flex-end;
    row-gap: 6px; }

/* Mobile card tables: gold card outline on hover (their row hover is otherwise fully neutral). */
@media (max-width: 768px) {
  #uxc-table-transactions tr:hover, #uxc-table-checkouts tr:hover, #uxc-table-landers tr:hover,
  #uxc-table-payments tr:hover, #uxc-table-ledger tr:hover, #uxc-table-audit tr:hover,
  #uxc-table-staff tr:hover, #uxc-table-staff-archived tr:hover, #uxc-table-sandbox tr:hover,
  #uxc-table-sandbox-checkouts tr:hover, #uxc-table-balance-activity tr:hover, #uxc-table-balances tr.uxc-balance-parent:hover {
    border-color: var(--uxc-accent); }
}

/* === eSend panel (formerly eTransfers, renamed 2026-09-02) ================================
   Console parity: the create form rides the standard .uxc-input boxes (label left, control
   right) in a responsive grid, and the sends list joins the boxed-row table skin the
   payments/checkouts family uses. Cells carry data-label so the generic mobile card-stack
   block flattens the table on phones; the action buttons use the account-action look. */
#uxc-etr-form {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 14px 28px;
  max-width: 1000px; }
#uxc-etr-form .uxc-input { margin-bottom: 0; }
@media (max-width: 768px) {
  #uxc-etr-form { grid-template-columns: 1fr; gap: 14px; }
}
#uxc-table-esends {
  border-collapse: separate;
  border-spacing: 0 6px;
  width: 100%; }
#uxc-table-esends th[data-field="amount"] {
  text-align: right; }
#uxc-table-esends td[data-label="Amount"] {
  text-align: right; }
#uxc-table-esends tbody tr td {
  border-top: 1px solid var(--uxc-border-color);
  border-bottom: 1px solid var(--uxc-border-color);
  border-radius: 0;
  padding: 15px; }
#uxc-table-esends tbody tr td:first-child {
  border-left: 1px solid var(--uxc-border-color); }
#uxc-table-esends tbody tr td:last-child {
  border-right: 1px solid var(--uxc-border-color);
  text-align: right; }
#uxc-table-esends tbody tr:hover td {
  background-color: transparent; }
#uxc-table-esends tbody tr:hover {
  border-color: var(--uxc-accent); }
.uxc-etr-mono {
  font-family: ui-monospace, Menlo, monospace;
  font-size: 12px;
  word-break: break-all;
  overflow-wrap: anywhere;
  max-width: 220px; }
.uxc-etr-act {
  background: transparent;
  border: 1px solid var(--uxc-border-color, #e6e6e6);
  border-radius: 0;
  padding: 6px 12px;
  font-size: 12px;
  cursor: pointer;
  color: var(--uxc-text-secondary, #6b6b6b);
  transition: all 0.3s;
  margin-left: 6px; }
.uxc-etr-act:first-child { margin-left: 0; }
.uxc-etr-act:hover {
  border-color: var(--uxc-accent);
  color: var(--uxc-accent); }
.uxc-etr-act:disabled {
  opacity: .5;
  cursor: default;
  border-color: var(--uxc-border-color, #e6e6e6);
  color: var(--uxc-text-secondary, #6b6b6b); }
.uxc-dark-mode .uxc-etr-act { border-color: var(--uxc-border-color); color: var(--uxc-text-primary); }
.uxc-dark-mode .uxc-etr-act:hover { border-color: var(--uxc-accent); color: var(--uxc-accent); }
/* Mobile: the generic .uxc-table:has(td[data-label]) card stack takes over; keep the actions
   cell button-wrapped under the row (no label) and the empty-state colspan row centered. */
@media (max-width: 768px) {
  #uxc-table-esends td.uxc-etr-actions {
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 6px; }
  #uxc-table-esends td.uxc-etr-actions::before { content: none; }
  #uxc-table-esends td.uxc-etr-actions .uxc-etr-act { margin-left: 0; }
  #uxc-table-esends td[colspan] {
    display: block;
    flex: 1 0 100%;
    width: 100%;
    text-align: center;
    padding: 18px 0;
    border: none; }
  #uxc-table-esends td[colspan]::before { content: none; }
}

/* Add-funds modal trigger (topup.js) rendered where a plain link used to be - the Subscriptions
   "Add funds" hint. Reads like the uxc-read-more link idiom it replaces (button reset + accent). */
.uxc-topup-link {
  background: none;
  border: 0;
  padding: 0;
  font: inherit;
  font-weight: 600;
  color: var(--uxc-accent);
  text-decoration: none;
  cursor: pointer;
  transition: color 0.3s; }

.uxc-topup-link:hover {
  color: #8a6622;
  text-decoration: underline; }

.uxc-dark-mode .uxc-topup-link:hover {
  color: #e6c07a; }

/* Operator 9/2 follow-ups: each field stacks its label on one line with the control
   full-width directly below (not the console's label-left row), and the empty state
   rides the family .uxc-not-found-cell pattern so it fills the card edge-to-edge
   (the bare-class td boxed + padded the message inside the row instead). */
#uxc-etr-form .uxc-input {
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start; }
#uxc-etr-form .uxc-input span {
  margin-bottom: 6px; }
#uxc-table-esends .uxc-not-found {
  margin: 0 auto; }

/*

CONSOLE MODE (SIMPLE / FULL) - cosmetic gates only: the uxc-mode-basic class on <html>
hides advanced chrome; never a permission (RBAC/UXC_NAV unchanged). Tokens keep light/dark
working; on-accent text uses --uxc-card-bg per the accent contrast law. (Source of record:
also mirrored at the end of admin.scss; admin.css itself is hand-maintained.)

*/

html.uxc-mode-basic .uxc-adv { display: none !important; }
html:not(.uxc-mode-basic) .uxc-basic-only { display: none !important; }
html.uxc-mode-basic .uxc-account-balance-row-ucash { display: none; }
html.uxc-mode-basic .uxc-dashboard-unlock-levels,
html.uxc-mode-basic .uxc-dashboard-balance-activity,
html.uxc-mode-basic .uxc-dashboard-store-slot,
html.uxc-mode-basic .uxc-dashboard-store-card-slot { display: none !important; }
/* Search stays in every mode: the trigger also flexes the dashboard header so the right
   cluster (actions, app drawer, avatar) sits flush right exactly like advanced mode. */
html.uxc-mode-basic .uxc-nav-subitem:not([data-uxc-basic="1"]),
html.uxc-mode-basic .uxc-settings-nav-btn:not([data-uxc-basic="1"]),
html.uxc-mode-basic .uxc-settings-index-card:not([data-uxc-basic="1"]) { display: none !important; }
html.uxc-mode-basic .uxc-cb-tab-ucash { display: none !important; }
html.uxc-mode-basic .uxc-cb-pane[data-kind="ucash"] { display: block !important; }
html.uxc-mode-basic .uxc-cb-pane[data-kind="ucash"] > *:not(.uxc-cb-redeem) { display: none !important; }

.uxc-mode-banner {
    position: fixed;
    top: var(--uxc-beta-banner-h, 0px);
    left: 0;
    right: 0;
    z-index: 1000000;   /* above the sidebar (999995), same layer as the beta banner */
    display: none;
    align-items: center;
    justify-content: center;
    gap: 14px;
    flex-wrap: wrap;
    padding: 10px 16px;
    background: #cc9933;
    color: #1a1a1a;
    font-size: 13px;
    font-weight: 600;
    box-shadow: 0 2px 10px var(--uxc-shadow);
}
.uxc-mode-banner.uxc-show { display: flex; }
.uxc-mode-banner-actions { display: flex; gap: 8px; }
.uxc-mode-banner-switch,
.uxc-mode-banner-dismiss {
    cursor: pointer;
    font: inherit;
    font-weight: 700;
    padding: 5px 12px;
    border-radius: 4px;
    border: 1px solid rgba(0, 0, 0, 0.35);
    background: transparent;
    color: inherit;
}
.uxc-mode-banner-switch { background: #1a1a1a; border-color: #1a1a1a; color: #fff; }
.uxc-mode-banner-switch:hover,
.uxc-mode-banner-dismiss:hover { opacity: 0.85; }

.uxc-mode-picker {
    position: fixed;
    inset: 0;
    z-index: 95;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.55);
    padding: 20px;
}
.uxc-mode-picker-card {
    background: var(--uxc-card-bg);
    color: var(--uxc-text-primary);
    max-width: 640px;
    width: 100%;
    padding: 34px 34px 26px;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.4);
    border: 1px solid var(--uxc-border-color);
    border-top: 3px solid var(--uxc-accent);
}
.uxc-mode-picker-title { font-size: 24px; font-weight: 800; }
.uxc-mode-picker-sub { color: var(--uxc-text-muted); margin: 8px 0 22px; font-size: 14px; }
.uxc-mode-picker-options { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.uxc-mode-picker-opt {
    all: unset;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 8px;
    cursor: pointer;
    border: 1px solid var(--uxc-border-color);
    background: var(--uxc-bg-primary);
    padding: 20px 18px;
    transition: border-color 0.15s ease, background 0.15s ease;
}
.uxc-mode-picker-opt:hover { border-color: var(--uxc-accent); background: rgba(var(--uxc-accent-rgb), 0.07); }
.uxc-mode-picker-opt:focus-visible { outline: 2px solid var(--uxc-accent); outline-offset: 2px; }
.uxc-mode-picker-opt-title { font-size: 17px; font-weight: 800; }
.uxc-mode-picker-opt-desc { font-size: 13px; color: var(--uxc-text-muted); line-height: 1.5; }
.uxc-mode-picker-later {
    all: unset;
    display: block;
    margin: 18px auto 0;
    cursor: pointer;
    color: var(--uxc-text-muted);
    font-size: 13px;
    text-decoration: underline;
}
.uxc-mode-picker-later:hover { color: var(--uxc-accent); }
@media (max-width: 600px) {
    .uxc-mode-picker-options { grid-template-columns: 1fr; }
    .uxc-mode-picker-card { padding: 24px 20px 20px; }
}

.uxc-wizard {
    position: fixed;
    inset: 0;
    z-index: 96;
    overflow: auto;
    background: rgba(0, 0, 0, 0.6);
    padding: 24px;
}
.uxc-wizard-card {
    background: var(--uxc-card-bg);
    color: var(--uxc-text-primary);
    max-width: 560px;
    margin: 40px auto;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.4);
}
.uxc-wizard-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 18px 24px;
    border-bottom: 1px solid var(--uxc-border-color);
}
.uxc-wizard-head-title { font-weight: 800; font-size: 15px; }
.uxc-wizard-skip {
    all: unset;
    cursor: pointer;
    color: var(--uxc-text-muted);
    font-size: 13px;
    text-decoration: underline;
}
.uxc-wizard-dots { display: flex; gap: 6px; padding: 16px 24px 0; }
.uxc-wizard-dot { width: 8px; height: 8px; border-radius: 4px; background: var(--uxc-bg-tertiary); }
.uxc-wizard-dot-done { background: var(--uxc-accent); opacity: 0.45; }
.uxc-wizard-dot-on { background: var(--uxc-accent); width: 22px; opacity: 1; }
.uxc-wizard-body-inner { padding: 20px 24px 8px; }
.uxc-wizard-big { font-size: 20px; font-weight: 800; line-height: 1.35; }
.uxc-wizard-desc { color: var(--uxc-text-muted); font-size: 14px; line-height: 1.6; margin: 10px 0 18px; }
.uxc-wizard-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.uxc-wizard-list li { display: flex; gap: 10px; font-size: 14px; align-items: baseline; }
.uxc-wizard-list li::before { content: "\2713"; color: var(--uxc-accent); font-weight: 700; }
.uxc-wizard-label { display: block; font-size: 13px; font-weight: 700; margin: 14px 0 6px; }
.uxc-wizard-input {
    width: 100%;
    box-sizing: border-box;
    padding: 10px 12px;
    font: inherit;
    font-size: 14px;
    background: var(--uxc-input-bg);
    border: 1px solid var(--uxc-border-color);
    color: var(--uxc-text-primary);
}
.uxc-wizard-input:focus { outline: none; border-color: var(--uxc-accent); }
.uxc-wizard-msg { font-size: 13px; min-height: 18px; margin-top: 8px; color: var(--uxc-text-muted); }
.uxc-wizard-msg-bad { color: var(--uxc-error); }
.uxc-wizard-linkish {
    all: unset;
    cursor: pointer;
    color: var(--uxc-text-muted);
    font-size: 13px;
    text-decoration: underline;
    margin-top: 10px;
    display: inline-block;
}
.uxc-wizard-foot {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
    padding: 16px 24px;
    border-top: 1px solid var(--uxc-border-color);
    margin-top: 10px;
}
.uxc-wizard-foot-actions { display: flex; gap: 10px; }
.uxc-wizard-btn {
    cursor: pointer;
    font: inherit;
    font-size: 14px;
    font-weight: 700;
    padding: 10px 22px;
    border: 1px solid var(--uxc-accent);
    background: var(--uxc-accent);
    color: var(--uxc-card-bg);
}
.uxc-wizard-btn:hover { opacity: 0.9; }
.uxc-wizard-btn[disabled] { opacity: 0.6; cursor: default; }
.uxc-wizard-btn-ghost {
    background: transparent;
    color: var(--uxc-text-primary);
    border-color: var(--uxc-border-color);
}
.uxc-wizard-link-box { display: flex; gap: 8px; margin: 16px 0 4px; }
.uxc-wizard-link-box .uxc-wizard-input { flex: 1; }
.uxc-wizard-qr {
    display: flex;
    justify-content: center;
    padding: 12px;
    background: #ffffff;
    width: max-content;
    margin: 14px auto 0;
}
.uxc-wizard-credit {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 14px;
    border: 1px solid var(--uxc-border-color);
    padding: 14px 16px;
    font-size: 14px;
}
.uxc-wizard-credit strong { font-size: 16px; }
.uxc-onboarding-basic-actions {
    display: flex;
    justify-content: flex-end;
    padding: 14px 20px;
    border-top: 1px dashed var(--uxc-border-color);
}

/* ===== eSend "Send with your wallet" (js/csp/esend-sign.js): release confirm modal ===== */

.uxc-etr-act-wallet {
    border: 1px solid var(--uxc-accent, #a37a29);
    background: var(--uxc-accent, #a37a29);
    color: var(--uxc-card-bg, #fff);
    font-weight: 700;
}

.uxc-esw {
    position: fixed;
    inset: 0;
    z-index: 94;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.55);
    padding: 20px;
}
.uxc-esw-card {
    background: var(--uxc-card-bg, #fff);
    color: var(--uxc-text-primary, #1a1a1a);
    max-width: 480px;
    width: 100%;
    padding: 26px 26px 20px;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.4);
}
.uxc-esw-title { font-size: 18px; font-weight: 800; margin-bottom: 14px; }
.uxc-esw-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 14px;
    padding: 8px 0;
    border-bottom: 1px solid var(--uxc-border-color, #eee);
    font-size: 13px;
}
.uxc-esw-row span { color: var(--uxc-text-muted, #888); white-space: nowrap; }
.uxc-esw-row strong { text-align: right; word-break: break-all; font-size: 13px; }
.uxc-esw-row strong em { color: var(--uxc-text-muted, #888); font-style: normal; font-size: 12px; }
.uxc-esw-mono { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 12px; }
.uxc-esw-note { color: var(--uxc-text-muted, #888); font-size: 12.5px; line-height: 1.55; margin-top: 12px; }
.uxc-esw-msg { font-size: 13px; line-height: 1.5; margin-top: 10px; }
.uxc-esw-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 18px; }
.uxc-esw-btn {
    cursor: pointer;
    font: inherit;
    font-size: 13.5px;
    font-weight: 700;
    padding: 10px 18px;
    border: 1px solid var(--uxc-accent, #a37a29);
    background: var(--uxc-accent, #a37a29);
    color: var(--uxc-card-bg, #fff);
}
.uxc-esw-btn:hover { opacity: 0.9; }
.uxc-esw-btn[disabled] { opacity: 0.6; cursor: default; }
.uxc-esw-ghost {
    background: transparent;
    color: var(--uxc-text-primary, #1a1a1a);
    border-color: var(--uxc-border-color, #ccc);
}

/* eSend wallet modal: mobile-wallet pairing view (QR) + alt-transport link. */
.uxc-esw-alt { margin-top: 12px; text-align: center; }
.uxc-esw-linkish {
    all: unset;
    cursor: pointer;
    color: var(--uxc-text-muted, #888);
    font-size: 12.5px;
    text-decoration: underline;
}
.uxc-esw-linkish:hover { color: var(--uxc-accent, #a37a29); }
.uxc-esw-center { text-align: center; margin-top: 10px; }
.uxc-esw-qr {
    display: flex;
    justify-content: center;
    padding: 12px;
    background: #ffffff;
    width: max-content;
    margin: 14px auto 0;
}

/* ===== Basic (Simple) mode wave 3: normie-simple lists + addresses ===== */

/* Payments list: keep status + date filters, hide the advanced filter items and the CSV
   download panel. The info blurb is BACK in basic (operator 9/3: the payments page keeps
   its top explainer card like the checkouts page, and the card margins restore the
   desktop-equivalent top spacing on mobile). */
html.uxc-mode-basic #uxc-download-transitions,
html.uxc-mode-basic .uxc-download-filters,
html.uxc-mode-basic [data-area="transactions"] .uxc-filter-type,
html.uxc-mode-basic [data-area="transactions"] .uxc-filter-cryptocurrency,
html.uxc-mode-basic [data-area="transactions"] .uxc-filter-checkout,
html.uxc-mode-basic [data-area="transactions"] .uxc-filter-resource,
html.uxc-mode-basic [data-area="transactions"] .uxc-filter-opened { display: none !important; }

/* Payment Links list: no import/export, no filter dropdowns, no bulk-select column. */
html.uxc-mode-basic #uxc-checkouts-download,
html.uxc-mode-basic #uxc-checkouts-download-panel,
html.uxc-mode-basic #uxc-filters-checkouts,
html.uxc-mode-basic #uxc-delete-selected-checkouts,
html.uxc-mode-basic [data-area="checkouts"] .uxc-nav-filters,
html.uxc-mode-basic #uxc-select-all-checkouts,
html.uxc-mode-basic .uxc-checkout-select { display: none !important; }

/* Settings > Addresses: rows + input + add-coin picker stay; the multi-wallet / per-coin
   settings / app-xpub surfaces are advanced. */
html.uxc-mode-basic .uxc-addr-settings,
html.uxc-mode-basic .uxc-addr-add-btn,
html.uxc-mode-basic .uxc-addr-toggle,
html.uxc-mode-basic #uxc-uapp-xpub-wrap,
html.uxc-mode-basic #uxc-app-wallets-remove-wrap,
html.uxc-mode-basic #uxc-wallets-open,
html.uxc-mode-basic #uxc-wallets-panel { display: none !important; }

/* Quick-modal body fields (console-quick.js reuses the wizard input styles). */
.uxc-qk-body .uxc-wizard-label:first-child { margin-top: 8px; }

/* Basic-only dashboard "Create payment link" CTA: same header-button box as the Payment
   Request button next to it (stretch + divider), so the two align in the header. */
#uxc-dashboard-create-link { white-space: nowrap; align-self: stretch; display: flex; align-items: center; justify-content: center; height: auto; padding: 0 14px; border-left: 1px solid var(--uxc-border-color, #e6e6e6); }
#uxc-dashboard-create-link > svg:first-child { top: -1px; }

/* Tablet-range (768-980px) dashboard header: desktop layout stays, but the create CTAs + store
   selector collapse to 42px icon-only cells (labels overflow the narrowed header; the search
   trigger keeps its full desktop form by decision). Mirrors the 42px cell pattern at 1102-1105
   and the mobile store-trigger icon-only treatment at 3559-3564. Static title/aria-label on the
   create buttons (functions.php) + the dynamic one on the store trigger (admin.js) keep them
   labeled for AT/tooltips. */
@media (min-width: 768px) and (max-width: 980px) {
  #uxc-dashboard-create-payment,
  #uxc-dashboard-create-link { width: 42px; box-sizing: border-box; padding: 0; flex: 0 0 42px; }
  #uxc-dashboard-create-payment .uxc-btn-text,
  #uxc-dashboard-create-link .uxc-btn-text { display: none; }
  #uxc-dashboard-create-payment > svg:first-child,
  #uxc-dashboard-create-link > svg:first-child { margin-right: 0; }
  .uxc-dashboard-store-slot:not(:empty) { width: 42px; box-sizing: border-box; padding: 0; flex: 0 0 42px; justify-content: center; }
  .uxc-dashboard-store-slot .uxc-ds-label,
  .uxc-dashboard-store-slot .uxc-ds-caret { display: none; }
  .uxc-dashboard-store-slot .uxc-dashboard-store-trigger { padding: 0; gap: 0; }
  /* Teller glyph aligns with the pos-open twin (svg baseline nudge). */
  #uxc-teller-open > svg:first-child { top: -1px; }
  /* Operator 9/4: the Request-a-payment header CTA joins the icon-only set in the tablet band. */
  #uxc-request-payment { width: 42px; box-sizing: border-box; padding: 0; flex: 0 0 42px; gap: 0; justify-content: center; }
  #uxc-request-payment .uxc-btn-text { display: none; }
  #uxc-request-payment > svg:first-child { margin-right: 0; }
  /* Operator 9/4: the checkouts Create CTA joins the icon-only set in the tablet band. */
  #uxc-create-checkout { width: 42px; box-sizing: border-box; padding: 0; flex: 0 0 42px; gap: 0; justify-content: center; }
  #uxc-create-checkout .uxc-btn-text { display: none; }
  #uxc-create-checkout > svg:first-child { margin-right: 0; }
  /* Operator 9/4: same icon-only treatment for every page-header CTA that carries an svg
     (teller-open and the bulk-delete are text-only and keep their labels). */
  #uxc-save-settings, #uxc-save-shop, #uxc-pos-open, #uxc-teller-open, #uxc-staff-add-header, #uxc-balance-refresh { width: 42px; box-sizing: border-box; padding: 0; flex: 0 0 42px; gap: 0; justify-content: center; }
  #uxc-save-settings .uxc-btn-text, #uxc-save-shop .uxc-btn-text, #uxc-pos-open .uxc-btn-text, #uxc-teller-open .uxc-btn-text, #uxc-staff-add-header .uxc-btn-text, #uxc-balance-refresh .uxc-btn-text { display: none; }
  #uxc-save-settings > svg:first-child, #uxc-save-shop > svg:first-child, #uxc-pos-open > svg:first-child, #uxc-teller-open > svg:first-child, #uxc-staff-add-header > svg:first-child, #uxc-balance-refresh > svg:first-child { margin-right: 0; }
}
/* Resize-seam transitions OFF while actively dragging (html.uxc-resizing, set by admin.js
   uxcResizeKick, removed 150ms after the last resize event): kills mid-drag wobble on the
   breakpoint flip (body padding-left, page-header margins, collapsed width, drawer slides)
   while deliberate interactions at rest keep their animations. Hover transitions on nav tiles
   and buttons are untouched (only the containers are matched). */
html.uxc-resizing .uxc-body,
html.uxc-resizing [data-area] > .uxc-page-header,
html.uxc-resizing [data-area] > .uxc-nav-wide,
html.uxc-resizing [data-area] > .uxc-page-actions,
html.uxc-resizing .uxc-sidebar,
html.uxc-resizing .uxc-sidebar-head,
html.uxc-resizing .uxc-sidebar > div.uxc-nav,
html.uxc-resizing .uxc-sidebar > .uxc-nav-close,
html.uxc-resizing .uxc-sidebar > .uxc-drawer-footer,
html.uxc-resizing .uxc-sidebar > .uxc-mobile-search,
html.uxc-resizing .uxc-sidebar > .uxc-nav-backdrop { transition: none !important; }
/* Operator 9/4: request-payment header button - leading svg down 3px (from the -2px baseline
   nudge at the .uxc-btn>svg rule) and its label down 1px, to sit centered in the header row. */
#uxc-request-payment .uxc-request-pay-icon { top: 1px; }
#uxc-request-payment .uxc-btn-text { position: relative; top: 1px; }
/* Operator 9/4: page-header titles (Payments / Checkouts / Dashboard ...) down 1px to match
   the repositioned row content. */
.uxc-page-header .uxc-title { position: relative; top: 1px; }
/* Operator 9/4: checkouts create button - label only, down 2px (icon untouched). */
#uxc-create-checkout .uxc-btn-text { position: relative; top: 2px; }
/* Operator 9/4: search trigger label down 1px (matches the repositioned header row). */
.uxc-cmd-search-trigger > span { position: relative; top: 1px; }
/* Teller CTA: same flex row as its pos-open twin (icon vertically centered with the label;
   glyph nudged -1px). Desktop scope; the tablet block above handles the icon-only cell. */
#uxc-teller-open { display: inline-flex; align-items: center; gap: 7px; }
#uxc-teller-open > svg:first-child { top: -1px; }

/* 2026-09-10: webhook row - breathing room (label / status / action), was crammed inline */
.uxc-webhook-row {
  align-items: center;
  gap: 14px;
  padding-top: 24px;
  border-top: 1px solid var(--uxc-border-color);
}
.uxc-webhook-row .uxc-details-value { flex: 1; text-align: left; }
.uxc-webhook-row .uxc-btn { flex-shrink: 0; }

/* ==== Language modal (.nd-lm-*, v63 9/11 port of the homepage u.cash language popup -
   DS patterns/console.css v63 family; opened from the account dropdown language row). ==== */
.nd-lm-root { position: fixed; inset: 0; z-index: 10000100; display: flex; align-items: center; justify-content: center; }
.nd-lm-back { position: absolute; inset: 0; background: rgba(0,0,0,.4); }
.nd-lm-panel { position: relative; display: flex; flex-direction: column; width: min(420px, 92vw); max-height: min(70vh, 560px); background: #fff; border: 1px solid #b0b0b0; box-shadow: 0 20px 60px rgba(0,0,0,.3); }
html:is(.uxc-dark-mode,.dark) .nd-lm-panel { background: #000; border-color: #333; }
.nd-lm-head { flex: none; display: flex; align-items: stretch; height: 42px; border-bottom: 1px solid #b0b0b0; }
html:is(.uxc-dark-mode,.dark) .nd-lm-head { border-bottom-color: #333; }
.nd-lm-title { flex: 1 1 auto; display: flex; align-items: center; padding: 0 14px; font: 600 12px Inter, system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif; text-transform: uppercase; letter-spacing: .04em; color: #6a6a6a; }
html:is(.uxc-dark-mode,.dark) .nd-lm-title { color: #9a9a9a; }
.nd-lm-close { flex: none; width: 42px; display: flex; align-items: center; justify-content: center; border: 0; border-left: 1px solid #b0b0b0; background: transparent; color: #1a1a1a; cursor: pointer; }
.nd-lm-close:hover { background: rgba(0,0,0,.05); }
html:is(.uxc-dark-mode,.dark) .nd-lm-close { border-left-color: #333; color: #e4e4e4; }
html:is(.uxc-dark-mode,.dark) .nd-lm-close:hover { background: rgba(255,255,255,.08); }
.nd-lm-list { flex: 1 1 auto; overflow-y: auto; overscroll-behavior: contain; padding: 6px 0; scrollbar-width: thin; scrollbar-color: #999 transparent; }
.nd-lm-list::-webkit-scrollbar { width: 2px; }
.nd-lm-list::-webkit-scrollbar-thumb { background: #999; border-radius: 3px; }
.nd-lm-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; height: 36px; padding: 0 14px; margin: 0; border: 0; background: transparent; color: #1a1a1a; font: 500 13px Inter, system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif; cursor: pointer; text-align: left; }
.nd-lm-row:hover { background: rgba(0,0,0,.05); }
.nd-lm-row svg { flex: none; color: #999; visibility: hidden; }
.nd-lm-row.nd-cur { color: var(--uxc-accent, #a37a29); font-weight: 600; }
.nd-lm-row.nd-cur svg { visibility: visible; color: var(--uxc-accent, #a37a29); }
html:is(.uxc-dark-mode,.dark) .nd-lm-row { color: #e4e4e4; }
html:is(.uxc-dark-mode,.dark) .nd-lm-row:hover { background: rgba(255,255,255,.08); }
html:is(.uxc-dark-mode,.dark) .nd-lm-row.nd-cur { color: var(--uxc-accent, #cc9528); }
html:is(.uxc-dark-mode,.dark) .nd-lm-row.nd-cur svg { color: var(--uxc-accent, #cc9528); }

/* ---- Expandable Account Ledger rows (v20260912h) ----
   No hover fill, no panel fill: the detail line reads as plain indented content. ---- */
#uxc-table-ledger tr.uxc-ledger-has-tx { cursor: pointer; }
#uxc-table-ledger .uxc-ledger-chev { display: inline-block; width: 0; height: 0; margin-left: 8px; vertical-align: middle; border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 5px solid currentColor; opacity: 0.55; transition: transform 0.15s ease; }
#uxc-table-ledger tr.uxc-ledger-open .uxc-ledger-chev { transform: rotate(180deg); }
#uxc-table-ledger tr.uxc-ledger-detail td { padding: 10px 15px 14px 15px !important; border-top: 1px solid var(--uxc-border-color, #e6e6e6); }
/* The mobile card pattern gives EVERY td a ::before (attr(data-label)); the detail cell has no
   label, so an empty flex item with a 12px margin occupied the left slot and pushed the detail
   content right. Kill it outright, and on mobile let the td use the card cells' own 4px rhythm
   (the tr card already carries the 12px padding). */
#uxc-table-ledger tr.uxc-ledger-detail td::before { content: none !important; margin: 0 !important; }
@media (max-width: 768px) {
  /* The card pattern makes every td a flex container; the detail cell's single child then
     shrinks to content and leaves dead space on the right. Restore block flow for it. */
  #uxc-table-ledger tr.uxc-ledger-detail td { display: block !important; }
  #uxc-table-ledger tr.uxc-ledger-detail td { padding: 4px 0 2px 0 !important; }
  /* Mobile card row: the Date cell is label + date + chevron, and the card pattern's
     space-between spread all three apart. Group the date + chevron together on the right
     (label keeps the left via margin-right:auto). */
  #uxc-table-ledger td[data-label="Date"] { justify-content: flex-end; }
  #uxc-table-ledger td[data-label="Date"]::before { margin-right: auto !important; }
  #uxc-table-ledger td[data-label="Date"] .uxc-ledger-chev { margin-left: 8px; }
}
#uxc-table-ledger .uxc-ledger-detail-box { display: block; margin: 0; padding: 0; border: none; background: none; }
#uxc-table-ledger .uxc-ledger-detail-pair { display: flex; justify-content: space-between; align-items: baseline; gap: 24px; font-size: 13px; padding: 3px 0; }
#uxc-table-ledger .uxc-ledger-detail-label { opacity: 0.65; flex-shrink: 0; }
#uxc-table-ledger .uxc-ledger-detail-value { font-weight: 600; text-align: right; max-width: 68%; }
#uxc-table-ledger .uxc-ledger-detail-hash { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 12px; word-break: break-all; }
#uxc-table-ledger .uxc-ledger-detail-actions { display: flex; justify-content: center; gap: 10px; flex-wrap: wrap; margin: 12px 0 2px; }
#uxc-table-ledger .uxc-ledger-detail-btn { display: inline-block; padding: 7px 18px; font-size: 13px; font-weight: 600; text-decoration: none; cursor: pointer; border: 1px solid currentColor; border-radius: 999px; opacity: 0.75; background: none; color: inherit; font-family: inherit; }
#uxc-table-ledger .uxc-ledger-detail-btn:hover { opacity: 1; }
#uxc-table-ledger .uxc-ledger-detail-btn[disabled] { opacity: 0.45; cursor: wait; }
#uxc-table-ledger .uxc-ledger-detail-loading { font-size: 13px; opacity: 0.6; }
