:root {
  --uv-account-bg: #eaf2f0;
  --uv-account-navy: #002471;
  --uv-account-ink: #243934;
  --uv-account-copy: #637770;
  --uv-account-line: #dbe8e4;
  --uv-account-green: #00845f;
  --uv-account-green-dark: #00694e;
  --uv-account-green-bright: #01b18f;
  --uv-account-soft: #f3f8f6;
  --uv-account-danger: #a94343;
  --uv-account-warning: #b27814;
  --uv-account-radius: 16px;
}

/* Grouped navigation is shared by every account role and keeps unknown endpoints reachable. */
body[data-uversa-reference-page].logged-in.woocommerce-account #uv-account-navigation.uv-account-navigation--grouped { padding:14px!important; }
#uv-account-navigation .uv-nav-area { margin:10px 12px 8px; color:#526d65; font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
#uv-account-navigation .uv-nav-group { margin:5px 0; border:0; }
#uv-account-navigation .uv-nav-group summary { display:flex; align-items:center; gap:8px; min-height:44px; padding:8px 12px; color:#183d52; font-size:13px; font-weight:750; cursor:pointer; border-radius:8px; list-style:none; }
#uv-account-navigation .uv-nav-group summary::-webkit-details-marker { display:none; }
#uv-account-navigation .uv-nav-group summary::before { content:'›'; font-size:19px; line-height:1; }
#uv-account-navigation .uv-nav-group[open] summary::before { transform:rotate(90deg); }
#uv-account-navigation .uv-nav-group summary:hover { background:#f3f8f6; }
#uv-account-navigation .uv-nav-group summary span { margin-left:auto; color:#526d65; font-size:11px; background:#edf4f1; border-radius:5px; padding:3px 6px; }
#uv-account-navigation .uv-nav-personal { border-top:1px solid #dbe8e4; margin-top:12px; padding-top:7px; }
body[data-uversa-reference-page].logged-in.woocommerce-account #uv-account-navigation.uv-account-navigation--grouped ul { min-width:0; display:grid; gap:2px; }
body[data-uversa-reference-page].logged-in.woocommerce-account #uv-account-navigation.uv-account-navigation--grouped li a { min-height:40px; font-size:13px!important; line-height:1.4; padding:8px 12px!important; white-space:normal; }
body[data-uversa-reference-page].logged-in.woocommerce-account #uv-account-navigation.uv-account-navigation--grouped li.is-active a { padding-left:25px!important; }
body[data-uversa-reference-page].logged-in.woocommerce-account #uv-account-navigation.uv-account-navigation--grouped li a::after { left:12px; top:12px; bottom:12px; width:3px; }
@media(min-width:981px){body[data-uversa-reference-page].logged-in.woocommerce-account .uv-account-page-wrap>.woocommerce:has(.uv-account-navigation--grouped){grid-template-columns:248px minmax(0,1fr)!important;gap:28px!important}}
@media(max-width:980px){body[data-uversa-reference-page].logged-in.woocommerce-account #uv-account-navigation.uv-account-navigation--grouped li a{min-height:44px}}

body[data-uversa-reference-page].logged-in.woocommerce-account .uv-account-page-main {
  min-height: 460px;
  padding: 122px 0 80px !important;
  color: var(--uv-account-ink);
  background: var(--uv-account-bg) !important;
}

body[data-uversa-reference-page].logged-in.woocommerce-account .uv-account-page-wrap {
  width: min(calc(100% - 160px), 1280px) !important;
  margin: 0 auto;
}

body[data-uversa-reference-page].logged-in.woocommerce-account .uv-account-page-wrap > .woocommerce {
  display: grid !important;
  grid-template-columns: 280px minmax(0, 1fr) !important;
  align-items: start;
  gap: 40px !important;
  margin: 0 !important;
}

body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-navigation {
  position: sticky;
  top: 108px;
  float: none;
  width: auto;
  min-width: 0;
  padding: 23px !important;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--uv-account-line);
  border-radius: var(--uv-account-radius) !important;
  box-shadow: none;
}

body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-navigation ul {
  display: grid;
  gap: 4px;
  margin: 0;
  padding: 0 !important;
  list-style: none;
}

body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-navigation li {
  margin: 0;
  padding: 0;
  border: 0;
}

body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-navigation li a {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 46px;
  padding: 0 16px !important;
  color: var(--uv-account-ink);
  border: 0;
  border-radius: 8px !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1;
}

body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-navigation li a::before {
  display: none !important;
  content: none !important;
  -webkit-mask: none !important;
  mask: none !important;
}

body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-navigation li a::after {
  position: absolute;
  top: 14px;
  bottom: 14px;
  left: 16px;
  width: 4px;
  content: "";
  background: transparent;
  border-radius: 999px;
}

body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
  color: var(--uv-account-green-dark);
  background: var(--uv-account-soft);
}

body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
  padding-left: 32px !important;
  color: var(--uv-account-green);
  background: var(--uv-account-soft) !important;
  font-weight: 700 !important;
}

body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a::after {
  background: var(--uv-account-green);
}

body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout {
  margin-top: 4px;
  padding: 0;
  border: 0;
}

body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a {
  color: var(--uv-account-danger);
}

body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-content,
body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-content:has(.uv-account-dashboard) {
  float: none;
  width: auto;
  min-width: 0;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
}

body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-content h1,
body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-content h2,
body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-content h3 {
  padding: 0 !important;
  color: var(--uv-account-navy);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.uv-account-dashboard svg,
.uv-license-account svg,
.uv-order-detail svg {
  display: block;
  width: 1em;
  height: 1em;
}

.uv-account-dashboard,
.uv-license-account,
.uv-orders-screen,
.uv-order-detail {
  display: grid;
  gap: 32px;
  min-width: 0;
}

.uv-account-screen-heading h1,
.uv-dashboard-welcome h1,
.uv-orders-screen > header h1,
.uv-account-profile-form > h1,
.uv-account-address-form > h1 {
  margin: 0;
  padding: 0 !important;
  color: var(--uv-account-navy) !important;
  font-size: clamp(30px, 3vw, 36px) !important;
  font-weight: 750 !important;
  line-height: 1.12 !important;
  letter-spacing: -.035em;
}

.uv-account-screen-heading p {
  margin: 7px 0 0;
  color: var(--uv-account-copy);
  font-size: 15px;
  line-height: 1.45;
}

/* Overview */
.uv-account-dashboard { gap: 32px; }
.uv-dashboard-welcome { display: block; padding: 1px 0 0; }
.uv-dashboard-title-line { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; }
.uv-dashboard-welcome p { margin: 8px 0 0; color: var(--uv-account-copy); font-size: 15px; line-height: 20px; }
.uv-dashboard-profile-summary {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 12px;
  color: #fff;
  background: var(--uv-account-navy);
  border: 0;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}
.uv-dashboard-welcome .uv-dashboard-verified {
  display: inline;
  max-width: none;
  padding: 0;
  color: var(--uv-account-copy);
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  font-size: inherit;
  white-space: nowrap;
}

.uv-dashboard-alert {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 18px;
  color: #fff;
  background: var(--uv-account-green-dark);
  border-radius: 10px;
}
.uv-dashboard-alert > span { display: grid; place-items: center; flex: 0 0 auto; }
.uv-dashboard-alert strong,
.uv-dashboard-alert p { margin: 0; color: inherit; }
.uv-dashboard-alert p { font-size: 12px; opacity: .85; }

.uv-dashboard-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
.uv-dashboard-metrics article {
  display: block;
  min-width: 0;
  min-height: 90px;
  height: 90px;
  padding: 20px;
  background: #fff;
  border: 1px solid var(--uv-account-line);
  border-radius: 12px;
  box-shadow: none;
}
.uv-dashboard-metrics small,
.uv-dashboard-metrics strong { display: block; }
.uv-dashboard-metrics small { margin-bottom: 10px; color: var(--uv-account-copy); font-size: 12px; font-weight: 750; line-height: 14px; text-transform: uppercase; }
.uv-dashboard-metrics strong { overflow: hidden; color: var(--uv-account-navy); text-overflow: ellipsis; white-space: nowrap; font-size: 19px; line-height: 23px; }
.uv-dashboard-metrics strong.is-success { color: var(--uv-account-green); }
.uv-dashboard-metrics strong.is-muted { color: var(--uv-account-copy); }

.uv-dashboard-license-panel {
  padding: 28px 31px 31px !important;
  background: #fff !important;
  border: 1px solid var(--uv-account-line) !important;
  border-radius: var(--uv-account-radius) !important;
  box-shadow: none !important;
}
.uv-dashboard-panel-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin: 0 0 24px; }
.uv-dashboard-panel-heading h2 { margin: 0; font-size: 20px !important; font-weight: 750; }
.uv-dashboard-license-actions { display: flex; gap: 16px; }
.uv-icon-action {
  min-height: 32px;
  padding: 0;
  color: var(--uv-account-green);
  background: transparent;
  border: 0;
  border-radius: 0;
  cursor: pointer;
  font-size: 14px;
  font-weight: 700;
}
.uv-icon-action:hover { color: var(--uv-account-green-dark); text-decoration: underline; text-underline-offset: 3px; }
.uv-dashboard-license-key {
  display: block;
  width: 100%;
  min-height: 52px;
  padding: 15px 16px;
  color: var(--uv-account-ink);
  background: var(--uv-account-soft);
  border: 0;
  border-radius: 8px;
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: 18px;
  font-weight: 750;
  line-height: 22px;
  letter-spacing: .04em;
  overflow-wrap: anywhere;
}
.uv-dashboard-license-details { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin: 24px 0 0; padding: 0; }
.uv-dashboard-license-details > div { min-width: 0; padding: 0; border: 0; }
.uv-dashboard-license-details dt { color: var(--uv-account-copy); font-size: 11px; line-height: 15px; }
.uv-dashboard-license-details dd { margin: 4px 0 0; color: var(--uv-account-ink); font-size: 14px; font-weight: 700; line-height: 18px; }
.uv-dashboard-license-note {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 24px 0 0;
  padding: 11px 12px;
  color: var(--uv-account-warning);
  background: #fffbea;
  border: 1px solid #f7e6c4;
  border-radius: 8px;
  font-size: 13px;
}
.uv-dashboard-license-note span { color: inherit; font-size: 18px; line-height: 1; }
.uv-dashboard-empty { padding: 18px 0; text-align: center; }
.uv-dashboard-empty h3 { margin: 0; font-size: 19px; }
.uv-dashboard-empty p { margin: 8px auto 18px; color: var(--uv-account-copy); font-size: 14px; }

.uv-dashboard-quick-section,
.uv-dashboard-recent-orders { display: grid; gap: 16px; }
.uv-dashboard-quick-section h2,
.uv-dashboard-recent-orders h2 { margin: 0; padding: 0 !important; font-size: 19px !important; line-height: 23px; }
.uv-dashboard-quick-links { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.uv-dashboard-quick-links a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 58px;
  padding: 0 20px;
  color: var(--uv-account-ink);
  background: #fff;
  border: 1px solid var(--uv-account-line);
  border-radius: 11px;
}
.uv-dashboard-quick-links a:hover { color: var(--uv-account-green-dark); border-color: #b9d9cf; }
.uv-dashboard-quick-links strong { font-size: 14px; }
.uv-dashboard-quick-links span { color: var(--uv-account-green); font-size: 22px; }
.uv-dashboard-order-list { display: grid; gap: 10px; }
.uv-dashboard-order {
  display: grid;
  grid-template-columns: auto auto auto 1fr;
  align-items: center;
  gap: 24px;
  min-height: 70px;
  padding: 0 23px;
  color: var(--uv-account-ink);
  background: #fff;
  border: 1px solid var(--uv-account-line);
  border-radius: 10px;
  box-shadow: none;
}
.uv-dashboard-order strong { color: var(--uv-account-ink); }
.uv-dashboard-order time { color: var(--uv-account-copy); }
.uv-dashboard-order b { color: var(--uv-account-navy); }
.uv-dashboard-order .uv-account-status { justify-self: end; }
.uv-dashboard-order.is-empty { display: flex; margin: 0; color: var(--uv-account-copy); }

/* Shared status, buttons and messages */
.uv-account-status {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}
.uv-account-status.is-success { color: var(--uv-account-green-dark); background: #e2f0ec; }
.uv-account-status.is-warning { color: var(--uv-account-warning); background: #fff4d6; }
.uv-account-status.is-danger { color: var(--uv-account-danger); background: #fceaea; }
.uv-account-status.is-neutral { color: var(--uv-account-copy); background: #edf2f1; }

.uv-account-primary-button,
.uv-account-secondary-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 19px;
  border-radius: 8px;
  cursor: pointer;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
}
.uv-account-primary-button { color: #fff !important; background: var(--uv-account-green); border: 1px solid var(--uv-account-green); }
.uv-account-primary-button:hover { background: var(--uv-account-green-dark); border-color: var(--uv-account-green-dark); }
.uv-account-secondary-button { color: var(--uv-account-ink) !important; background: #fff; border: 1px solid var(--uv-account-line); }
.uv-account-secondary-button:hover { color: var(--uv-account-green-dark) !important; border-color: #b9d9cf; }

.uv-account-copy-toast {
  position: absolute;
  z-index: 4;
  top: -20px;
  right: -40px;
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 52px;
  padding: 0 20px;
  color: #fff;
  background: var(--uv-account-green-dark);
  border-radius: 12px;
  box-shadow: 0 12px 22px rgba(0, 65, 47, .15);
  font-size: 13px;
  font-weight: 700;
}
.uv-account-copy-toast[hidden] { display: none !important; }
.uv-account-copy-toast svg { width: 20px; height: 20px; }

body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-message,
body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-error,
body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-info {
  margin: 0;
  padding: 15px 18px;
  color: #fff;
  background: var(--uv-account-green-dark);
  border: 0;
  border-radius: 12px;
  list-style: none;
  font-size: 14px;
  font-weight: 650;
}
body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-error { color: var(--uv-account-danger); background: #fceaea; }

/* Licenses */
.uv-license-account { position: relative; }
.uv-license-list { display: grid; gap: 20px; }
.uv-license-card {
  display: block !important;
  margin: 0 !important;
  padding: 24px !important;
  background: #fff !important;
  border: 1px solid var(--uv-account-line) !important;
  border-radius: var(--uv-account-radius) !important;
  box-shadow: none !important;
}
.uv-license-card > header { display: flex; align-items: center; gap: 12px; }
.uv-license-card h2 { margin: 0; color: var(--uv-account-ink) !important; font-size: 19px !important; font-weight: 750; }
.uv-license-card > header .uv-account-secondary-button { margin-left: auto; }
.uv-license-key {
  display: block;
  width: 100%;
  margin: 20px 0;
  padding: 12px !important;
  color: var(--uv-account-ink);
  background: var(--uv-account-soft) !important;
  border: 0 !important;
  border-radius: 8px !important;
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: 16px;
  font-weight: 750;
  letter-spacing: .04em;
}
.uv-license-card dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 0; padding: 0; }
.uv-license-card dt { color: var(--uv-account-copy); font-size: 11px; }
.uv-license-card dd { margin: 3px 0 0; color: var(--uv-account-ink); font-size: 13px; font-weight: 650; }
.uv-license-card dd a { color: var(--uv-account-navy); font-weight: 750; }

.uv-account-empty-card {
  padding: 36px;
  text-align: center;
  background: #fff;
  border: 1px solid var(--uv-account-line);
  border-radius: var(--uv-account-radius);
}
.uv-account-empty-card h2 { margin: 0; font-size: 20px !important; }
.uv-account-empty-card p { margin: 8px 0 18px; color: var(--uv-account-copy); }

/* Orders list */
.uv-orders-screen { gap: 32px; }
.uv-orders-table-wrap { overflow: hidden; background: #fff; border: 1px solid var(--uv-account-line); border-radius: var(--uv-account-radius); }
body[data-uversa-reference-page].logged-in.woocommerce-account .uv-orders-table {
  width: 100%;
  margin: 0;
  border: 0 !important;
  border-collapse: collapse;
  border-radius: 0 !important;
  font-size: 14px;
}
.uv-orders-table th,
.uv-orders-table td { padding: 20px 19px !important; color: var(--uv-account-ink); border: 0; border-bottom: 1px solid var(--uv-account-line); text-align: left; vertical-align: middle; }
.uv-orders-table thead th { padding-top: 17px !important; padding-bottom: 17px !important; color: var(--uv-account-ink) !important; background: var(--uv-account-soft) !important; font-size: 12px; font-weight: 750; }
.uv-orders-table tbody tr:last-child th,
.uv-orders-table tbody tr:last-child td { border-bottom: 0; }
.uv-orders-table tbody th a { color: var(--uv-account-navy); font-weight: 800; }
.uv-orders-table td strong { color: var(--uv-account-ink); white-space: nowrap; }
.uv-order-view-link { color: var(--uv-account-green) !important; font-weight: 750; text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
.uv-account-pagination { display: flex; justify-content: flex-end; gap: 10px; }

/* Order detail */
.uv-order-detail { position: relative; gap: 32px; }
.uv-order-detail-nav { display: flex; align-items: center; justify-content: space-between; color: var(--uv-account-copy); font-size: 14px; }
.uv-order-detail-nav span { display: flex; align-items: center; gap: 10px; }
.uv-order-detail-nav strong { color: var(--uv-account-navy); }
.uv-order-detail-nav a { color: var(--uv-account-green); font-weight: 700; }
.uv-order-progress-card,
.uv-order-detail-card,
.uv-order-licenses-card { padding: 28px 31px; background: #fff; border: 1px solid var(--uv-account-line); border-radius: var(--uv-account-radius); }
.uv-order-progress-card > header { display: grid; grid-template-columns: auto auto 1fr; align-items: center; gap: 14px; }
.uv-order-progress-card h1 { margin: 0; font-size: 28px !important; }
.uv-order-progress-card time { justify-self: end; color: var(--uv-account-copy); font-size: 14px; }
.uv-order-progress { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 36px 0 10px; padding: 0; list-style: none; }
.uv-order-progress li { position: relative; display: flex; align-items: center; gap: 9px; color: var(--uv-account-copy); font-size: 13px; font-weight: 700; }
.uv-order-progress li::after { position: absolute; z-index: 0; top: 13px; right: 10px; left: 29px; height: 2px; content: ""; background: var(--uv-account-line); }
.uv-order-progress li:last-child::after { display: none; }
.uv-order-progress li span { position: relative; z-index: 1; display: grid; place-items: center; flex: 0 0 26px; width: 26px; height: 26px; color: var(--uv-account-copy); background: #fff; border: 2px solid var(--uv-account-line); border-radius: 50%; font-size: 11px; }
.uv-order-progress li b { position: relative; z-index: 1; padding-right: 10px; background: #fff; font-weight: 700; }
.uv-order-progress li.is-complete { color: var(--uv-account-ink); }
.uv-order-progress li.is-complete::after { background: var(--uv-account-green); }
.uv-order-progress li.is-complete span { color: #fff; background: var(--uv-account-green); border-color: var(--uv-account-green); }
.uv-order-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.uv-order-detail-card h2,
.uv-order-licenses-card h2 { margin: 0 0 18px; font-size: 19px !important; }
.uv-order-item { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding-bottom: 12px; border-bottom: 1px solid var(--uv-account-line); }
.uv-order-item strong,
.uv-order-item small { display: block; }
.uv-order-item strong { color: var(--uv-account-ink); font-size: 14px; }
.uv-order-item small { margin-top: 8px; color: var(--uv-account-copy); font-size: 12px; }
.uv-order-item b { color: var(--uv-account-ink); font-size: 14px; white-space: nowrap; }
.uv-order-total { display: flex; justify-content: space-between; gap: 20px; padding-top: 14px; }
.uv-order-total b { color: var(--uv-account-navy); font-size: 19px; }
.uv-order-billing { display: grid; gap: 8px; margin: 0; }
.uv-order-billing > div { display: flex; gap: 4px; }
.uv-order-billing dt { color: var(--uv-account-ink); font-weight: 750; }
.uv-order-billing dd { margin: 0; color: var(--uv-account-ink); }
.uv-order-license-row { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 20px 23px; background: var(--uv-account-soft); border: 1px solid var(--uv-account-line); border-radius: 12px; }
.uv-order-license-row + .uv-order-license-row { margin-top: 12px; }
.uv-order-license-row code { color: var(--uv-account-navy); font-size: 16px; font-weight: 800; }
.uv-order-license-row p { display: flex; align-items: center; gap: 14px; margin: 8px 0 0; color: var(--uv-account-copy); font-size: 13px; }

/* Address and profile forms */
body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-content:has(.uv-account-profile-form),
body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-content:has(.uv-account-address-form) {
  display: grid;
  gap: 32px;
}
.uv-account-profile-form,
.uv-account-address-form { display: contents; }
.uv-account-profile-form > h1,
.uv-account-address-form > h1 { order: 1; }
body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-content:has(.uv-account-profile-form) > :where(.woocommerce-message, .woocommerce-error, .woocommerce-info),
body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-content:has(.uv-account-address-form) > :where(.woocommerce-message, .woocommerce-error, .woocommerce-info) { order: 2; }
.uv-profile-personal-card,
.uv-address-summary-card { order: 3; }
.uv-profile-password-card,
.uv-address-edit-card { order: 4; }
.uv-profile-professional-card { order: 4; }
.uv-profile-password-card { order: 5; }

.uv-account-form-card,
.uv-address-summary-card,
.uv-address-edit-card {
  margin: 0;
  padding: 30px !important;
  background: #fff !important;
  border: 1px solid var(--uv-account-line) !important;
  border-radius: var(--uv-account-radius) !important;
  box-shadow: none !important;
}
.uv-account-form-card h2,
.uv-address-summary-card h2,
.uv-address-edit-card h2 { margin: 0 0 26px; font-size: 20px !important; }
.uv-account-card-intro { margin: -18px 0 27px; color: var(--uv-account-copy); font-size: 13px; }
.uv-profile-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 16px; }
.uv-profile-fields .form-row-wide { grid-column: 1 / -1; }
.uv-profile-password-fields { display: grid; gap: 20px; }
.uv-profile-identity-panel { margin-top: 20px; padding: 20px; background: #f7faf9; border: 1px solid var(--uv-account-line); border-radius: 10px; }
.uv-profile-identity-panel[hidden] { display: none; }
.uv-profile-account-fields { margin-top: 20px; padding-top: 20px; border-top: 1px solid var(--uv-account-line); }

body[data-uversa-reference-page].logged-in.woocommerce-account :where(.uv-account-profile-form, .uv-account-address-form) .form-row { float: none; width: auto; margin: 0; padding: 0; }
.uv-doctor-subspecialties { margin-top: 26px; padding-top: 24px; border-top: 1px solid var(--uv-account-line); }
.uv-doctor-subspecialties-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-bottom: 16px; }
.uv-doctor-subspecialties-heading h3 { margin: 0; color: var(--uv-account-ink); font-size: 15px; }
.uv-doctor-subspecialties-heading p { margin: 5px 0 0; color: var(--uv-account-copy); font-size: 12px; }
.uv-doctor-subspecialty-list { display: grid; gap: 12px; }
.uv-doctor-subspecialty-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(120px, .42fr) 44px; align-items: end; gap: 12px; padding: 16px; background: #f7faf9; border: 1px solid var(--uv-account-line); border-radius: 10px; }
body[data-uversa-reference-page].logged-in.woocommerce-account .uv-account-profile-form .uv-doctor-subspecialty-row label { margin: 0; }
.uv-doctor-subspecialty-row label > span { display: block; margin-bottom: 7px; }
.uv-doctor-subspecialty-remove { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; color: var(--uv-account-danger); background: #fff; border: 1px solid var(--uv-account-line); border-radius: 8px; cursor: pointer; font-size: 23px; line-height: 1; }
.uv-doctor-subspecialty-remove:hover,
.uv-doctor-subspecialty-remove:focus-visible { color: #fff; background: var(--uv-account-danger); border-color: var(--uv-account-danger); outline: 0; }
.uv-doctor-subspecialties-heading button:disabled { cursor: not-allowed; opacity: .55; }
body[data-uversa-reference-page].logged-in.woocommerce-account :where(.uv-account-profile-form, .uv-account-address-form) label { display: block; margin: 0 0 7px; color: var(--uv-account-ink); font-size: 13px; font-weight: 750; }
body[data-uversa-reference-page].logged-in.woocommerce-account :where(.uv-account-profile-form, .uv-account-address-form) .required { color: var(--uv-account-danger); }
body[data-uversa-reference-page].logged-in.woocommerce-account .uv-account-address-form .optional { display: none; }
body[data-uversa-reference-page].logged-in.woocommerce-account :where(.uv-account-profile-form, .uv-account-address-form) input:not([type="hidden"]),
body[data-uversa-reference-page].logged-in.woocommerce-account :where(.uv-account-profile-form, .uv-account-address-form) select {
  width: 100%;
  min-height: 44px;
  padding: 0 15px;
  color: var(--uv-account-ink);
  background: #fff;
  border: 1px solid var(--uv-account-line);
  border-radius: 8px;
  outline: 0;
  font-size: 14px;
}
body[data-uversa-reference-page].logged-in.woocommerce-account :where(.uv-account-profile-form, .uv-account-address-form) input:focus,
body[data-uversa-reference-page].logged-in.woocommerce-account :where(.uv-account-profile-form, .uv-account-address-form) select:focus { border-color: var(--uv-account-green-bright); box-shadow: 0 0 0 3px rgba(1, 177, 143, .1); }
body[data-uversa-reference-page].logged-in.woocommerce-account :where(.uv-account-profile-form, .uv-account-address-form) small { display: block; margin-top: 6px; color: var(--uv-account-copy); font-size: 12px; font-style: normal; }

.uv-account-password-field { position: relative; display: block; }
.uv-account-password-field input { padding-right: 48px !important; }
.uv-account-password-field button { position: absolute; top: 0; right: 0; display: grid; place-items: center; width: 44px; height: 44px; padding: 0; color: var(--uv-account-copy); background: transparent; border: 0; cursor: pointer; }
.uv-account-password-field button span { width: 18px; height: 18px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' d='M3 3l18 18M10.6 10.7A2 2 0 0 0 13.3 13.4M9.9 4.2A10.8 10.8 0 0 1 12 4c6 0 9.5 6 9.5 6a17 17 0 0 1-2.2 3M6.2 6.2C3.8 8 2.5 10 2.5 10S6 16 12 16c1 0 2-.2 2.9-.5'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' d='M3 3l18 18M10.6 10.7A2 2 0 0 0 13.3 13.4M9.9 4.2A10.8 10.8 0 0 1 12 4c6 0 9.5 6 9.5 6a17 17 0 0 1-2.2 3M6.2 6.2C3.8 8 2.5 10 2.5 10S6 16 12 16c1 0 2-.2 2.9-.5'/%3E%3C/svg%3E") center / contain no-repeat; }
.uv-account-password-field button.is-visible span { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' d='M2.5 12S6 6 12 6s9.5 6 9.5 6S18 18 12 18s-9.5-6-9.5-6Z'/%3E%3Ccircle cx='12' cy='12' r='2.5' fill='none' stroke='%23000' stroke-width='2'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' d='M2.5 12S6 6 12 6s9.5 6 9.5 6S18 18 12 18s-9.5-6-9.5-6Z'/%3E%3Ccircle cx='12' cy='12' r='2.5' fill='none' stroke='%23000' stroke-width='2'/%3E%3C/svg%3E"); }
.uv-account-form-actions { display: flex; align-items: center; gap: 32px; margin-top: 28px; }
.uv-account-form-actions > a { color: var(--uv-account-copy); font-size: 14px; font-weight: 700; }

.uv-address-summary-card h2 { margin-bottom: 14px; color: var(--uv-account-ink) !important; font-size: 16px !important; }
.uv-address-summary-card address { margin: 0 0 26px; color: var(--uv-account-copy); font-size: 15px; font-style: normal; line-height: 1.6; }
.uv-address-fields { position: relative; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 20px 16px; }
.uv-address-fields .uv-field-postcode,
.uv-address-fields .uv-field-address { grid-column: 1 / -1; }
.uv-address-fields .uv-field-number { grid-column: span 3; }
.uv-address-fields .uv-field-complement { grid-column: span 3; }
.uv-address-fields .uv-field-neighborhood,
.uv-address-fields .uv-field-city,
.uv-address-fields .uv-field-state { grid-column: span 2; }
.uv-address-autocomplete-state { position: absolute; top: 31px; right: 15px; display: inline-flex; align-items: center; min-height: 40px; padding: 0 14px; color: var(--uv-account-green-dark); background: #e2f0ec; border-radius: 8px; font-size: 11px; font-weight: 750; }
.uv-address-fields .uv-field-postcode input { padding-right: 175px !important; }

/* Legacy reference-footer rules remain for backwards-compatible embeds. */
body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer {
  min-height: 419px;
  color: var(--uv-account-copy);
  background: #fff;
  border-top: 1px solid var(--uv-account-line);
}
body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer-inner {
  width: min(calc(100% - 160px), 1280px);
  margin: 0 auto;
  padding: 76px 0 38px;
}
body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer-grid {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) 150px 150px 120px;
  gap: 56px;
}
body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer-brand img {
  display: block;
  width: 44px;
  height: auto;
}
body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer-brand p {
  max-width: 315px;
  margin: 34px 0 0;
  color: var(--uv-account-copy);
  font-size: 14px;
  line-height: 1.6;
}
body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer nav {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 12px;
}
body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer nav h2 {
  margin: 0 0 6px;
  color: var(--uv-account-ink);
  font-size: 13px;
  font-weight: 750;
  letter-spacing: .02em;
  text-transform: uppercase;
}
body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer nav a {
  color: var(--uv-account-copy);
  font-size: 14px;
}
body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer nav a:hover { color: var(--uv-account-green); }
body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer-disclaimer {
  margin: 30px 0 0;
  padding: 30px 0 0;
  color: var(--uv-account-copy);
  border-top: 1px solid var(--uv-account-line);
  font-size: 12px;
  line-height: 1.55;
}
body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-top: 26px;
}
body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer-bottom p { margin: 0; color: var(--uv-account-copy); font-size: 12px; }
body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-socials { display: flex; align-items: center; gap: 12px; }
body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-socials a {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  color: var(--uv-account-copy);
}
body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-socials svg { width: 15px; height: 15px; fill: currentColor; }

@media (max-width: 1180px) {
  body[data-uversa-reference-page].logged-in.woocommerce-account .uv-account-page-wrap { width: min(calc(100% - 48px), 1080px) !important; }
  body[data-uversa-reference-page].logged-in.woocommerce-account .uv-account-page-wrap > .woocommerce { grid-template-columns: 230px minmax(0, 1fr) !important; gap: 28px !important; }
  .uv-dashboard-quick-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .uv-dashboard-license-details { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .uv-account-copy-toast { right: 0; }
  body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer-inner { width: min(calc(100% - 48px), 1080px); }
  body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer-grid { grid-template-columns: minmax(240px, 1fr) repeat(3, minmax(110px, 150px)); gap: 34px; }
}

@media (max-width: 800px) {
  body[data-uversa-reference-page].logged-in.woocommerce-account .uv-account-page-main { padding: 104px 0 48px !important; }
  body[data-uversa-reference-page].logged-in.woocommerce-account .uv-account-page-wrap { width: min(calc(100% - 28px), 720px) !important; }
  body[data-uversa-reference-page].logged-in.woocommerce-account .uv-account-page-wrap > .woocommerce { grid-template-columns: 1fr !important; gap: 24px !important; }
  body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-navigation { position: static; padding: 8px !important; overflow-x: auto; }
  body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-navigation ul { display: flex; min-width: max-content; }
  body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-navigation li a { min-height: 40px; padding: 0 12px !important; white-space: nowrap; }
  body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { padding-left: 26px !important; }
  body[data-uversa-reference-page].logged-in.woocommerce-account .woocommerce-MyAccount-navigation li a::after { top: 12px; bottom: 12px; left: 11px; width: 3px; }
  .uv-dashboard-metrics { grid-template-columns: 1fr; }
  .uv-dashboard-metrics article { min-height: 78px; }
  .uv-dashboard-order { grid-template-columns: 1fr auto; gap: 8px 18px; padding: 15px 18px; }
  .uv-dashboard-order .uv-account-status { grid-column: 2; grid-row: 1; }
  .uv-dashboard-order time,
  .uv-dashboard-order b { grid-row: 2; }
  .uv-order-detail-grid { grid-template-columns: 1fr; }
  .uv-order-progress-card > header { grid-template-columns: auto 1fr; }
  .uv-order-progress-card time { grid-column: 1 / -1; justify-self: start; }
  .uv-order-progress li { align-items: flex-start; font-size: 11px; }
  .uv-profile-fields { grid-template-columns: 1fr; }
  .uv-profile-fields .form-row-wide { grid-column: auto; }
  body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer-inner { width: min(calc(100% - 32px), 720px); padding: 54px 0 30px; }
  body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer-grid { grid-template-columns: repeat(3, 1fr); gap: 32px 24px; }
  .uv-doctor-subspecialty-row { grid-template-columns: minmax(0, 1fr) minmax(110px, .45fr) 44px; }
  body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer-brand { grid-column: 1 / -1; }
}

@media (max-width: 620px) {
  .uv-account-dashboard,
  .uv-license-account,
  .uv-orders-screen,
  .uv-order-detail { gap: 24px; }
  .uv-dashboard-title-line { align-items: flex-start; flex-direction: column; gap: 9px; }
  .uv-dashboard-welcome h1,
  .uv-account-screen-heading h1,
  .uv-account-profile-form > h1,
  .uv-account-address-form > h1 { font-size: 28px !important; }
  .uv-dashboard-license-panel,
  .uv-license-card,
  .uv-order-progress-card,
  .uv-order-detail-card,
  .uv-order-licenses-card,
  .uv-account-form-card,
  .uv-address-summary-card,
  .uv-address-edit-card { padding: 22px !important; }
  .uv-dashboard-panel-heading { align-items: flex-start; flex-direction: column; }
  .uv-dashboard-license-details { grid-template-columns: 1fr; }
  .uv-dashboard-quick-links { grid-template-columns: 1fr; }
  .uv-license-card > header { align-items: flex-start; flex-wrap: wrap; }
  .uv-license-card > header .uv-account-secondary-button { width: 100%; margin-left: 0; }
  .uv-license-card dl { grid-template-columns: 1fr; gap: 14px; }
  .uv-order-license-row { align-items: flex-start; flex-direction: column; }
  .uv-order-license-row .uv-account-secondary-button { width: 100%; }
  .uv-order-detail-nav { align-items: flex-start; flex-direction: column; gap: 10px; }
  .uv-order-progress { grid-template-columns: 1fr; gap: 14px; margin-top: 25px; }
  .uv-order-progress li::after { top: 25px; right: auto; bottom: -14px; left: 12px; width: 2px; height: 16px; }
  .uv-order-progress li:last-child::after { display: none; }
  .uv-order-progress-card > header { grid-template-columns: 1fr; }
  .uv-order-progress-card time { grid-column: auto; }
  .uv-orders-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .uv-orders-table,
  .uv-orders-table tbody,
  .uv-orders-table tr,
  .uv-orders-table th,
  .uv-orders-table td { display: block; width: 100%; }
  .uv-orders-table tr { display: grid; grid-template-columns: 1fr 1fr; padding: 16px; border-bottom: 1px solid var(--uv-account-line); }
  .uv-orders-table tbody tr:last-child { border-bottom: 0; }
  .uv-orders-table th,
  .uv-orders-table td { padding: 7px !important; border: 0 !important; }
  .uv-orders-table th::before,
  .uv-orders-table td::before { display: block; margin-bottom: 3px; color: var(--uv-account-copy); content: attr(data-title); font-size: 10px; font-weight: 700; text-transform: uppercase; }
  .uv-address-fields { grid-template-columns: 1fr; }
  .uv-address-fields :where(.uv-field-postcode, .uv-field-address, .uv-field-number, .uv-field-complement, .uv-field-neighborhood, .uv-field-city, .uv-field-state) { grid-column: auto; }
  .uv-address-autocomplete-state { position: static; justify-self: start; margin-top: -12px; }
  .uv-address-fields .uv-field-postcode input { padding-right: 15px !important; }
  body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer-grid { grid-template-columns: 1fr 1fr; }
  .uv-doctor-subspecialties-heading { align-items: stretch; flex-direction: column; }
  .uv-doctor-subspecialties-heading .uv-account-secondary-button { width: 100%; }
  .uv-doctor-subspecialty-row { grid-template-columns: 1fr; }
  .uv-doctor-subspecialty-remove { justify-self: end; }
  body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer-grid nav:last-child { grid-column: 1 / -1; }
  body[data-uversa-reference-page].logged-in.woocommerce-account .uv-security-footer-bottom { align-items: flex-start; flex-direction: column; }
}


/* License management v2 */
.uv-license-v2 {
  position: relative;
  display: grid;
  gap: 28px;
  color: var(--uv-account-ink);
}
.uv-license-v2 [hidden] { display: none !important; }
.uv-license-v2-hero,
.uv-license-v2-section-heading,
.uv-license-v2-card > header,
.uv-license-v2-actions,
.uv-license-v2-dialog header,
.uv-license-v2-dialog footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.uv-license-v2-hero {
  padding: 30px 32px;
  color: #fff;
  background:
    radial-gradient(circle at 92% 12%, rgba(1, 177, 143, .35), transparent 32%),
    linear-gradient(135deg, #002471 0%, #063a67 55%, #00694e 100%);
  border-radius: 22px;
  box-shadow: 0 20px 40px rgba(0, 36, 113, .14);
}
.uv-license-v2-hero h1 {
  margin: 3px 0 8px;
  color: #fff !important;
  font-size: clamp(28px, 3vw, 38px) !important;
  letter-spacing: -.035em;
}
.uv-license-v2-hero p { max-width: 720px; margin: 0; color: rgba(255,255,255,.82); font-size: 15px; line-height: 1.65; }
.uv-license-v2-eyebrow {
  display: block;
  color: var(--uv-account-green);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.uv-license-v2-hero .uv-license-v2-eyebrow { color: #73e2c8; }
.uv-license-v2-security {
  max-width: 230px;
  padding: 11px 13px;
  color: #d9fff6;
  background: rgba(0, 20, 64, .28);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 12px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.45;
}
.uv-license-v2-announcer:empty { display: none; }
.uv-license-v2-announcer {
  margin-top: -12px;
  padding: 13px 16px;
  color: var(--uv-account-green-dark);
  background: #e4f7f0;
  border: 1px solid #afe0d0;
  border-radius: 12px;
  font-weight: 700;
}
.uv-license-v2-announcer.is-error { color: var(--uv-account-danger); background: #fceaea; border-color: #edc2c2; }

.uv-license-v2-section { display: grid; gap: 14px; }
.uv-license-v2-section-heading h2,
.uv-license-v2-clinic-cta h2,
.uv-license-v2-dialog h2,
.uv-license-v2-table-card h2 {
  margin: 3px 0 0;
  color: var(--uv-account-ink) !important;
  font-size: 22px !important;
  letter-spacing: -.02em;
}
.uv-license-v2-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.uv-license-v2-card,
.uv-license-v2-table-card,
.uv-license-v2-change-list {
  padding: 26px;
  background: #fff;
  border: 1px solid var(--uv-account-line);
  border-radius: 18px;
  box-shadow: 0 8px 24px rgba(36, 57, 52, .045);
}
.uv-license-v2-card.is-clinic { border-top: 4px solid var(--uv-account-green); }
.uv-license-v2-card h2 { margin: 3px 0 0; color: var(--uv-account-ink) !important; font-size: 21px !important; }
.uv-license-v2-key {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin: 20px 0;
  padding: 13px 15px;
  background: var(--uv-account-soft);
  border: 1px solid var(--uv-account-line);
  border-radius: 11px;
}
.uv-license-v2-key code { overflow: hidden; color: var(--uv-account-navy); background: transparent; font-size: 14px; font-weight: 800; letter-spacing: .045em; text-overflow: ellipsis; white-space: nowrap; }
.uv-license-v2-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin: 0; }
.uv-license-v2-facts dt { color: var(--uv-account-copy); font-size: 11px; }
.uv-license-v2-facts dd { margin: 4px 0 0; color: var(--uv-account-ink); font-size: 13px; font-weight: 750; }

.uv-license-v2-clinic-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  align-items: center;
  gap: 36px;
  padding: 34px;
  overflow: hidden;
  background:
    linear-gradient(100deg, rgba(1,177,143,.08), transparent 48%),
    #fff;
  border: 1px solid #b9ddd4;
  border-radius: 22px;
  box-shadow: 0 16px 38px rgba(0, 105, 78, .08);
}
.uv-license-v2-clinic-cta p { max-width: 650px; margin: 10px 0 0; color: var(--uv-account-copy); line-height: 1.7; }
.uv-license-v2-cta-price { display: grid; gap: 5px; padding: 22px; background: var(--uv-account-soft); border-radius: 16px; }
.uv-license-v2-cta-price strong { color: var(--uv-account-navy); font-size: 27px; }
.uv-license-v2-cta-price span { margin-bottom: 12px; color: var(--uv-account-copy); font-size: 12px; }

.uv-license-v2-tabs {
  display: flex;
  gap: 6px;
  padding: 5px;
  background: #dce9e5;
  border-radius: 13px;
}
.uv-license-v2-tabs button {
  flex: 1;
  min-height: 42px;
  color: var(--uv-account-copy);
  background: transparent;
  border: 0;
  border-radius: 9px;
  font-weight: 750;
  cursor: pointer;
}
.uv-license-v2-tabs button[aria-selected="true"] { color: var(--uv-account-navy); background: #fff; box-shadow: 0 4px 12px rgba(36,57,52,.08); }
.uv-license-v2 [data-license-panel] { display: grid; gap: 18px; }
.uv-license-v2-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.uv-license-v2-metrics article { display: grid; gap: 4px; padding: 20px; background: #fff; border: 1px solid var(--uv-account-line); border-radius: 15px; }
.uv-license-v2-metrics span { color: var(--uv-account-copy); font-size: 12px; }
.uv-license-v2-metrics strong { color: var(--uv-account-navy); font-size: 23px; }
.uv-license-v2-metrics small { color: var(--uv-account-copy); }
.uv-license-v2-notice { display: flex; align-items: center; gap: 12px; padding: 15px 17px; color: #735110; background: #fff7df; border: 1px solid #ecd99c; border-radius: 13px; }
.uv-license-v2-notice span { flex: 1; font-size: 13px; }
.uv-license-v2-notice.is-danger { color: #812f2f; background: #fceaea; border-color: #efc4c4; }
.uv-license-v2-notice button { color: inherit; background: transparent; border: 0; font-weight: 800; text-decoration: underline; cursor: pointer; }
.uv-license-v2-actions { justify-content: flex-start; flex-wrap: wrap; }
.uv-license-v2-danger-link { margin-left: auto; color: var(--uv-account-danger); background: transparent; border: 0; font-weight: 750; text-decoration: underline; cursor: pointer; }
.uv-license-v2-footnote { margin: -4px 0 0; color: var(--uv-account-copy); font-size: 12px; line-height: 1.55; }

.uv-license-v2-table-card { display: grid; gap: 22px; padding: 0; overflow: hidden; }
.uv-license-v2-table-card .uv-license-v2-section-heading { padding: 25px 26px 0; }
.uv-license-v2-table-wrap { overflow-x: auto; }
.uv-license-v2-table-wrap table { width: 100%; margin: 0; border: 0; border-collapse: collapse; font-size: 13px; }
.uv-license-v2-table-wrap th,
.uv-license-v2-table-wrap td { padding: 15px 18px; border: 0; border-top: 1px solid var(--uv-account-line); text-align: left; white-space: nowrap; }
.uv-license-v2-table-wrap th { color: var(--uv-account-copy); background: var(--uv-account-soft); font-size: 11px; text-transform: uppercase; }
.uv-license-v2-table-wrap a { color: var(--uv-account-navy); font-weight: 800; }
.uv-license-v2-change-list { display: grid; gap: 0; }
.uv-license-v2-change-list h3 { margin: 0 0 10px; font-size: 17px; }
.uv-license-v2-change-list > div { display: grid; grid-template-columns: 150px 1fr auto; gap: 16px; padding: 12px 0; border-top: 1px solid var(--uv-account-line); font-size: 12px; }
.uv-license-v2-change-list span { color: var(--uv-account-copy); }
.uv-license-v2-change-list b { color: var(--uv-account-green-dark); }

.uv-license-v2-dialog {
  width: min(calc(100% - 32px), 560px);
  max-height: calc(100vh - 40px);
  padding: 0;
  overflow: auto;
  color: var(--uv-account-ink);
  background: #fff;
  border: 0;
  border-radius: 20px;
  box-shadow: 0 28px 80px rgba(0, 36, 75, .28);
}
.uv-license-v2-dialog.is-wide { width: min(calc(100% - 32px), 760px); }
.uv-license-v2-dialog::backdrop { background: rgba(0, 25, 55, .58); backdrop-filter: blur(3px); }
.uv-license-v2-dialog form { display: grid; gap: 22px; padding: 27px; }
.uv-license-v2-dialog header { align-items: flex-start; padding-bottom: 16px; border-bottom: 1px solid var(--uv-account-line); }
.uv-license-v2-dialog header > button { width: 36px; height: 36px; color: var(--uv-account-copy); background: var(--uv-account-soft); border: 0; border-radius: 50%; font-size: 24px; cursor: pointer; }
.uv-license-v2-dialog footer { justify-content: flex-end; padding-top: 18px; border-top: 1px solid var(--uv-account-line); }
.uv-license-v2-dialog label { display: grid; gap: 7px; color: var(--uv-account-ink); font-size: 12px; font-weight: 750; }
.uv-license-v2-dialog input,
.uv-license-v2-dialog select,
.uv-license-v2-mp-field { min-height: 46px; padding: 11px 13px; color: var(--uv-account-ink); background: #fff; border: 1px solid #bdd1cb; border-radius: 10px; font: inherit; }
.uv-license-v2-dialog input:focus,
.uv-license-v2-dialog select:focus,
.uv-license-v2-dialog button:focus-visible,
.uv-license-v2-tabs button:focus-visible { outline: 3px solid rgba(1,177,143,.28); outline-offset: 2px; border-color: var(--uv-account-green); }
.uv-license-v2-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.uv-license-v2-form-grid .is-wide { grid-column: 1 / -1; }
.uv-license-v2-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 0; padding: 0; list-style: none; }
.uv-license-v2-steps li { padding: 10px; color: var(--uv-account-copy); background: var(--uv-account-soft); border-radius: 9px; font-size: 12px; font-weight: 800; text-align: center; }
.uv-license-v2-steps li.is-active { color: var(--uv-account-green-dark); background: #dff4ed; }
.uv-license-v2-steps span { margin-left: 5px; }
.uv-license-v2-plan-options { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 0 0 20px; padding: 0; border: 0; }
.uv-license-v2-plan-options legend { margin-bottom: 10px; font-weight: 800; }
.uv-license-v2-plan-options label { position: relative; display: block; }
.uv-license-v2-plan-options input { position: absolute; opacity: 0; }
.uv-license-v2-plan-options span { display: grid; gap: 4px; min-height: 95px; padding: 18px; background: var(--uv-account-soft); border: 2px solid transparent; border-radius: 13px; cursor: pointer; }
.uv-license-v2-plan-options input:checked + span { background: #e7f8f2; border-color: var(--uv-account-green); }
.uv-license-v2-plan-options small { color: var(--uv-account-copy); }
.uv-license-v2-seat-picker { max-width: 280px; }
.uv-license-v2-seat-picker > span { display: grid; grid-template-columns: 44px 1fr 44px; align-items: center; overflow: hidden; border: 1px solid #bdd1cb; border-radius: 11px; }
.uv-license-v2-seat-picker button { height: 46px; color: var(--uv-account-green-dark); background: var(--uv-account-soft); border: 0; font-size: 21px; cursor: pointer; }
.uv-license-v2-seat-picker input { width: 100%; border: 0; border-right: 1px solid var(--uv-account-line); border-left: 1px solid var(--uv-account-line); border-radius: 0; text-align: center; }
.uv-license-v2-review dl { display: grid; gap: 0; margin: 0; border: 1px solid var(--uv-account-line); border-radius: 13px; }
.uv-license-v2-review dl div { display: flex; justify-content: space-between; gap: 20px; padding: 13px 15px; border-top: 1px solid var(--uv-account-line); }
.uv-license-v2-review dl div:first-child { border-top: 0; }
.uv-license-v2-review dt { color: var(--uv-account-copy); }
.uv-license-v2-review dd { margin: 0; font-weight: 800; }
.uv-license-v2-calculation { padding: 13px; color: var(--uv-account-copy); background: var(--uv-account-soft); border-radius: 10px; font-size: 12px; line-height: 1.55; }
.uv-license-v2-confirm { display: flex !important; grid-template-columns: auto 1fr; align-items: flex-start; line-height: 1.5; }
.uv-license-v2-confirm input { min-height: 0; margin-top: 3px; }
.uv-button.is-danger { background: var(--uv-account-danger) !important; }
.uv-license-v2-dialog button[disabled] { opacity: .55; cursor: not-allowed; }

@media (max-width: 900px) {
  .uv-license-v2-hero { align-items: flex-start; flex-direction: column; }
  .uv-license-v2-security { max-width: none; }
  .uv-license-v2-grid,
  .uv-license-v2-clinic-cta,
  .uv-license-v2-metrics { grid-template-columns: 1fr; }
  .uv-license-v2-cta-price { max-width: 360px; }
}

@media (max-width: 620px) {
  .uv-license-v2 { gap: 20px; }
  .uv-license-v2-hero,
  .uv-license-v2-card,
  .uv-license-v2-clinic-cta { padding: 21px; border-radius: 16px; }
  .uv-license-v2-card > header,
  .uv-license-v2-actions,
  .uv-license-v2-dialog footer,
  .uv-license-v2-notice { align-items: stretch; flex-direction: column; }
  .uv-license-v2-key { align-items: stretch; flex-direction: column; }
  .uv-license-v2-facts,
  .uv-license-v2-form-grid,
  .uv-license-v2-plan-options { grid-template-columns: 1fr; }
  .uv-license-v2-facts { gap: 11px; }
  .uv-license-v2-actions > *,
  .uv-license-v2-dialog footer > * { width: 100%; }
  .uv-license-v2-danger-link { margin-left: 0; padding: 10px; }
  .uv-license-v2-tabs { overflow-x: auto; }
  .uv-license-v2-tabs button { min-width: 150px; }
  .uv-license-v2-dialog { width: calc(100% - 20px); max-height: calc(100vh - 20px); border-radius: 15px; }
  .uv-license-v2-dialog form { padding: 20px; }
  .uv-license-v2-steps span { display: none; }
  .uv-license-v2-change-list > div { grid-template-columns: 1fr auto; }
  .uv-license-v2-change-list > div span { grid-column: 1 / -1; }
}

@media (prefers-reduced-motion: reduce) {
  .uv-license-v2-dialog::backdrop { backdrop-filter: none; }
}
