/* Account surfaces/navigation. Text actions and fields use theme.css shared tokens. */
:root {
  --account-surface: var(--surface);
  --account-inset-surface: var(--bg);
  --account-panel-radius: 24px;
  --account-panel-pad: clamp(22px, 2.6vw, 34px);
  --account-card-radius: 20px;
  --account-nav-size: 1rem;
  --account-nav-radius: 22px;
  --account-nav-gap: 12px;
  --account-nav-pad: 10px 12px;
  --account-nav-height: 50px;
  --account-nav-mobile-height: 44px;
  --account-nav-icon: 18px;
  --account-nav-shift: 4px;
  --account-motion: 180ms;
  --account-logout-ink: #d3373f;
  --account-profile-glow: color-mix(in srgb, var(--lavender, var(--accent)) 38%, transparent);
  --account-profile-soft: color-mix(in srgb, var(--bg) 55%, transparent);
  --account-sidebar-width: 340px;
  --account-profile-radius: 28px;
  --account-profile-cycle: 36s;
  --account-type-micro:var(--type-micro-size);
  --account-type-caption:var(--type-caption-size);
  --account-type-meta:var(--type-meta-size);
  --account-type-small:var(--type-small-size);
  --account-type-body:var(--type-copy-size);
  --account-copy-leading:var(--copy-leading);
  --account-content-gap:var(--space-6);
  --account-compact-gap:var(--space-3);
  --account-focus-width:2px;
  --account-focus-offset:4px;
}

.customer-page .woocommerce-MyAccount-content :is(.customer-welcome, .customer-dashboard-section, .dfvn-orders-empty, .dfvn-downloads-empty, .saved-empty, .dfvn-security-card, .dfvn-account-security-link, .dfvn-passkeys-card, .dfvn-member-empty, .dfvn-member-status),
.customer-page .woocommerce-MyAccount-content > :is(form, .woocommerce-Addresses, .woocommerce-orders-table, .woocommerce-MyAccount-downloads, .woocommerce-order, .woocommerce-Message, .woocommerce-info) {
  padding: var(--account-panel-pad);
  border: 0;
  border-radius: var(--account-panel-radius);
  background: var(--account-surface);
}
.customer-page :is(.dfvn-order-card, .dfvn-download-card, .saved-collection, .customer-stat) {
  border-radius: var(--account-card-radius);
  background: var(--account-surface);
}
.customer-page :is(.customer-empty, .dfvn-recovery, .dfvn-passkeys-item, .dfvn-passkeys-empty) {
  border-radius: var(--account-card-radius);
  background: var(--account-inset-surface);
}
.customer-page .dfvn-member-account {
  --member-surface: var(--account-surface);
  --member-radius: var(--account-panel-radius);
  --member-pad: var(--account-panel-pad);
  width: 100%;
  margin-inline: 0;
}

/* Text actions share one treatment; navigation, tabs and icon controls keep their roles. */
.customer-page .woocommerce-MyAccount-content :is(.button, .dfvn-order-action, .saved-collection-rename, .saved-collection-delete, .dfvn-passkeys-delete, .woocommerce-EditAccountForm button[type="submit"]):not([hidden]),
.customer-page .dfvn-passkeys-modal__actions .button:not([hidden]) { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; cursor: pointer; }
.customer-page .woocommerce-MyAccount-content :is(.button, .dfvn-order-action, .saved-collection-rename, .saved-collection-delete, .dfvn-passkeys-delete):hover,
.customer-page .dfvn-passkeys-modal__actions .button:hover { opacity: var(--button-hover-opacity,var(--hover-opacity,.82)); }
.customer-page .woocommerce-MyAccount-content :is(.button, .dfvn-order-action, .saved-collection-rename, .saved-collection-delete, .dfvn-passkeys-delete):focus-visible,
.customer-page .dfvn-passkeys-modal__actions .button:focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; }
.customer-page .woocommerce-MyAccount-content :is(.button, .dfvn-order-action, .saved-collection-rename, .saved-collection-delete, .dfvn-passkeys-delete):disabled { opacity: .5; cursor: not-allowed; }
.customer-page .woocommerce-MyAccount-content :is(.button, .dfvn-order-action) :is(.dfvn-icon, svg) {
  flex: 0 0 var(--account-nav-icon);
  width: var(--account-nav-icon);
  height: var(--account-nav-icon);
}

.customer-page .woocommerce-MyAccount-navigation a {
  font-size: var(--account-nav-size);
  gap: var(--account-nav-gap);
  border-radius: var(--account-nav-radius);
  padding: var(--account-nav-pad);
  min-height: var(--account-nav-height);
  opacity: 1;
  transition: background var(--account-motion), color var(--account-motion), transform var(--account-motion);
}
.customer-page .woocommerce-MyAccount-navigation a:hover { transform: translateX(var(--account-nav-shift)); opacity: 1; }
.customer-page .woocommerce-MyAccount-navigation a:focus-visible { outline: 2px solid var(--ink); outline-offset: -2px; }
.customer-nav-label { flex: 1; min-width: 0; }
.customer-nav-arrow { display: inline-flex; flex: 0 0 var(--account-nav-icon); }
.customer-nav-arrow .dfvn-icon { width: var(--account-nav-icon); height: var(--account-nav-icon); }
.customer-page .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--customer-logout a { color: var(--account-logout-ink); }

@media (max-width: 800px) {
  .customer-page { --account-panel-pad: 22px; }
}
@media (prefers-reduced-motion: reduce) {

  .customer-page .woocommerce-MyAccount-navigation a:hover { transform: none; }
}
/* Profile A: soft mesh, with six hues on the background only. */
.customer-page > .woocommerce { grid-template-columns: minmax(280px,var(--account-sidebar-width)) minmax(0,1fr); }
.customer-page .customer-profile { --account-profile-lilac:var(--profile-tone-1,#d9d0ef); --account-profile-sage:var(--profile-tone-2,#cfe1c1); --account-profile-sky:var(--profile-tone-3,#cde4ef); --account-profile-peach:var(--profile-tone-4,#f0d5bd); --account-profile-rose:var(--profile-tone-5,#ead0dc); --account-profile-butter:var(--profile-tone-6,#e7e4bd); --profile-ink:#181b16; --profile-muted:#555e50; position:relative; isolation:isolate; overflow:hidden; display:grid; gap:10px; padding:30px 24px 24px; border-radius:var(--account-profile-radius); color:var(--profile-ink); background:var(--account-profile-sage); }
.customer-page .customer-profile::before { content:''; z-index:-1; position:absolute; inset:-25%; background:radial-gradient(ellipse at 20% 10%,var(--account-profile-lilac) 0,transparent 60%),radial-gradient(ellipse at 90% 100%,var(--account-profile-sky) 0,transparent 60%); }
.customer-page .customer-profile[data-profile-motion=on] { animation:dfvn-profile-colors var(--account-profile-cycle) linear infinite; animation-play-state:var(--account-profile-play,running); }
.customer-page .customer-profile[data-profile-motion=on]::before { animation:dfvn-profile-mesh var(--account-profile-cycle) linear infinite; animation-play-state:var(--account-profile-play,running); }
.customer-page .customer-avatar { width:72px; height:72px; background:#f7f7f2e6; color:#181b16; font-size:30px; position:relative; overflow:hidden; }
.customer-page .customer-avatar>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; border-radius:inherit; opacity:0; }
.customer-page .customer-avatar.has-avatar-image>img { opacity:1; }
.customer-page .customer-avatar.has-avatar-image>.customer-avatar-initial { visibility:hidden; }
.customer-page .customer-profile>strong { font-size:var(--account-profile-name-size); overflow-wrap:anywhere; }
.customer-page .customer-profile-email { font-size:var(--account-type-body); color:var(--profile-muted); margin-bottom:var(--space-2); }
.customer-page .profile-member { width:100%; display:grid; gap:14px; padding-top:8px; }
.customer-page .customer-profile-badge { display:flex; justify-content:center; width:100%; gap:var(--space-2); min-height:48px; margin:0; padding:12px; background:#181b16; color:#f7f7f2; font-size:var(--account-type-body); text-align:left; }
.customer-page .customer-profile-badge>span { white-space:nowrap; }
.customer-page .customer-profile-badge>.dfvn-icon { width:18px; height:18px; }
.customer-page .member-dot { width:5px; height:5px; border-radius:50%; background:currentColor; flex-shrink:0; }
.customer-page .profile-member p { margin:0; color:var(--profile-muted); font-size:var(--account-type-small); line-height:1.6; }
.customer-page .woocommerce-MyAccount-navigation .profile-member-action { justify-content:center; background:transparent; color:var(--profile-ink); font-size:var(--account-type-body); font-weight:var(--font-regular,400); border-radius:0; min-height:0; width:auto; padding:9px 0 0; }
.customer-page .profile-nav-panel { position:relative; background:var(--account-surface); padding:10px; border-radius:var(--account-panel-radius); }
.customer-page .profile-nav-group { padding-bottom:10px; }
.customer-page .profile-nav-group+.profile-nav-group { padding-top:8px; border-top:1px solid var(--line); }
.customer-page .profile-nav-group h2 { margin:0; padding:12px 14px 7px; color:var(--muted); font:var(--font-semibold,600) var(--type-micro-size)/1.4 var(--body-font); text-transform:uppercase; letter-spacing:.09em; }
.customer-page .woocommerce-MyAccount-navigation .profile-nav-group ul { background:transparent; padding:0; border-radius:0; overflow:visible; }
.customer-page .account-updates-count { display:inline-grid; place-items:center; min-width:22px; height:22px; padding-inline:6px; margin-left:auto; border-radius:var(--pill); background:var(--lavender); color:#22332d; font-size:var(--account-type-caption); line-height:1; font-weight:var(--font-medium,500); }
.customer-page .account-updates-count[hidden] { display:none; }
.customer-page .profile-nav-logout { padding-bottom:0; }
@keyframes dfvn-profile-colors { 0%,100% { background-color:var(--account-profile-sage); } 16.66% { background-color:var(--account-profile-sky); } 33.33% { background-color:var(--account-profile-lilac); } 50% { background-color:var(--account-profile-rose); } 66.66% { background-color:var(--account-profile-peach); } 83.33% { background-color:var(--account-profile-butter); } }
@keyframes dfvn-profile-mesh { 0%,100% { transform:translate(0,0) rotate(0); } 50% { transform:translate(8%,-5%) rotate(15deg); } }
html[data-theme=dark] .customer-page .customer-profile:not([data-profile-member=active]) { --profile-ink:#f1f1e8; --profile-muted:#d1d7ca; --account-profile-sage:color-mix(in srgb,#151821 75%,var(--profile-tone-2)); --account-profile-sky:color-mix(in srgb,#151821 75%,var(--profile-tone-3)); --account-profile-lilac:color-mix(in srgb,#151821 75%,var(--profile-tone-1)); --account-profile-rose:color-mix(in srgb,#151821 75%,var(--profile-tone-5)); --account-profile-peach:color-mix(in srgb,#151821 75%,var(--profile-tone-4)); --account-profile-butter:color-mix(in srgb,#151821 75%,var(--profile-tone-6)); }
@media(prefers-color-scheme:dark) { html[data-theme=system] .customer-page .customer-profile:not([data-profile-member=active]) { --profile-ink:#f1f1e8; --profile-muted:#d1d7ca; --account-profile-sage:color-mix(in srgb,#151821 75%,var(--profile-tone-2)); --account-profile-sky:color-mix(in srgb,#151821 75%,var(--profile-tone-3)); --account-profile-lilac:color-mix(in srgb,#151821 75%,var(--profile-tone-1)); --account-profile-rose:color-mix(in srgb,#151821 75%,var(--profile-tone-5)); --account-profile-peach:color-mix(in srgb,#151821 75%,var(--profile-tone-4)); --account-profile-butter:color-mix(in srgb,#151821 75%,var(--profile-tone-6)); } }
@media(max-width:1000px) {
  .customer-page > .woocommerce { grid-template-columns:1fr; }
  .customer-page .customer-profile { max-width:520px; margin-inline:auto; }
  .customer-page .profile-nav-panel { display:flex; overflow-x:auto; scrollbar-width:none; -ms-overflow-style:none; touch-action:pan-y pinch-zoom; }
  .customer-page .profile-nav-panel::-webkit-scrollbar { display:none; width:0; height:0; }
  .customer-page .profile-nav-group { flex-shrink:0; padding:0; }
  .customer-page .profile-nav-group+.profile-nav-group { border:0; padding:0; }
  .customer-page .profile-nav-group h2 { position:absolute; left:0; top:0; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); padding:0; }
  .customer-page .woocommerce-MyAccount-navigation .profile-nav-group ul { display:flex; flex-wrap:nowrap; gap:3px; }
  .customer-page .profile-nav-panel a { min-height:var(--account-nav-mobile-height); }
  .customer-page .dfvn-account-rail { cursor:grab; }
  .customer-page .dfvn-account-rail.is-swipe-dragging { cursor:grabbing; user-select:none; }
  .customer-page .dfvn-account-rail:focus-visible { outline:var(--account-focus-width) solid var(--ink); outline-offset:3px; }
}
@media(max-width:390px) { .customer-page .customer-profile { padding-inline:18px; } .customer-page .customer-profile-badge { font-size:var(--account-type-meta); gap:6px; padding-inline:10px; } }
@media(prefers-reduced-motion:reduce) { .customer-page .customer-profile,.customer-page .customer-profile::before,.customer-page .customer-profile>strong { animation:none!important; } }
/* Active Membership: a dark surface with a moving glow and luminous text. */
.customer-page .customer-profile[data-profile-member=active] { --profile-ink:#f8f7ff; --profile-muted:#e0dcef; background:#080d1b; border:0; box-shadow:none; animation:none; }
.customer-page .customer-profile[data-profile-member=active]::before { inset:-15%; background:radial-gradient(ellipse at 52% 95%,var(--profile-tone-1) 0,transparent 40%),radial-gradient(ellipse at 95% 86%,var(--profile-tone-2) 0,transparent 47%),radial-gradient(ellipse at 15% 72%,var(--profile-tone-3) 0,transparent 45%),radial-gradient(ellipse at 48% 105%,var(--profile-tone-4) 0,transparent 38%); opacity:.9; }
.customer-page .customer-profile[data-profile-member=active]>strong { font-size:var(--account-profile-vip-name-size); line-height:1.2; background:linear-gradient(175deg,#fff 28%,#eee7ff 52%,var(--profile-tone-4) 78%,var(--profile-tone-2)); background-size:100% 180%; background-clip:text; -webkit-background-clip:text; color:transparent; }
.customer-page .customer-profile[data-profile-member=active] .customer-profile-badge { background:#ffffff12; border:1px solid #ffffff25; color:#f7f5ff; }
.customer-page .customer-profile[data-profile-member=active] .customer-profile-badge>span:not(.dfvn-icon) { background:linear-gradient(110deg,#fff 25%,#e5d5ff 65%,var(--profile-tone-4)); background-clip:text; -webkit-background-clip:text; color:transparent; }
.customer-page .customer-profile[data-profile-member=active][data-profile-motion=on]::before { animation:dfvn-vip-mesh var(--account-profile-cycle) ease-in-out infinite; animation-play-state:var(--account-profile-play,running); }
.customer-page .customer-profile[data-profile-member=active][data-profile-motion=on]>strong { animation:dfvn-vip-text var(--account-profile-cycle) ease-in-out infinite; animation-play-state:var(--account-profile-play,running); }
@keyframes dfvn-vip-mesh { 0%,100% { transform:translate(-6%,8%) scale(1.03); filter:hue-rotate(-18deg); } 33% { transform:translate(7%,-6%) scale(1.08); filter:hue-rotate(42deg); } 66% { transform:translate(-8%,-3%) scale(1.02); filter:hue-rotate(100deg); } }
@keyframes dfvn-vip-text { 0%,100% { background-position:0 0; } 50% { background-position:0 100%; } }

/* Order C and Address A share account panel, action and radius tokens. */
.dfvn-account-layout { --detail-gap:var(--card-gap); --detail-studio-bg:#242536; --detail-studio-ink:#f7f7f2; --detail-total-bg:var(--lavender,#ddd6fc); --detail-total-ink:#29253e; }
.customer-page .dfvn-account-layout .detail-panel { min-width:0; padding:var(--account-panel-pad); background:var(--account-surface); border:0; border-radius:var(--account-panel-radius); }
.customer-page .dfvn-account-layout h2 { margin:0 0 var(--card-title-copy-gap); font-size:var(--account-section-title-size); line-height:var(--account-section-title-leading); }
.customer-page .dfvn-account-layout p { font-size:var(--account-type-body); line-height:1.7; color:var(--muted); }
.dfvn-account-layout dl { margin:0; }
.dfvn-account-layout dt { color:var(--muted); font-size:var(--account-type-small); }
.dfvn-account-layout dd { margin:0; font-size:var(--type-answer-size); font-weight:var(--font-medium,500); overflow-wrap:anywhere; }
.detail-eyebrow { display:block; font-size:var(--account-type-micro); font-weight:var(--font-semibold,600); letter-spacing:.1em; color:var(--muted); }
.detail-studio-head { display:grid; grid-template-columns:1fr 1.2fr; align-items:center; gap:30px; margin-bottom:var(--detail-gap); padding:var(--account-panel-pad); border-radius:var(--account-panel-radius); background:var(--detail-studio-bg); color:var(--detail-studio-ink); }
.customer-page .detail-studio-head h2 { font-size:var(--account-section-title-size); margin:var(--title-lead-gap) 0; line-height:var(--account-section-title-leading); }
.detail-studio-head .detail-eyebrow,.detail-studio-head dt { color:#cac5dd; }
.detail-status { display:inline-flex; align-items:center; gap:var(--space-2); padding:9px 13px; border-radius:var(--pill); font-size:var(--account-type-meta); font-weight:var(--font-semibold,600); background:#ffffff19; color:var(--detail-studio-ink); }
.detail-status::before { content:''; width:5px; height:5px; border-radius:50%; background:currentColor; }
.detail-meta { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-5); }
.dfvn-account-layout .detail-meta dd { margin-top:7px; }
.detail-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(270px,.85fr); gap:var(--detail-gap); align-items:start; }
.detail-main,.detail-side { display:grid; gap:var(--detail-gap); min-width:0; }
.dfvn-account-layout table { width:100%; border-collapse:collapse; font-size:var(--account-type-body); }
.dfvn-account-layout :is(th,td) { padding:17px 0; text-align:left; border-bottom:1px solid var(--line); vertical-align:top; }
.dfvn-account-layout :is(th,td):last-child { text-align:right; padding-left:14px; }
.dfvn-account-layout .detail-products thead { color:var(--muted); font-size:var(--account-type-meta); }
.dfvn-account-layout .detail-products .product-name { font-weight:var(--font-semibold,600); overflow-wrap:anywhere; }
.dfvn-account-layout .detail-products .product-quantity { font-weight:var(--font-regular,400); margin-left:6px; }
.dfvn-account-layout .detail-products .wc-item-meta { padding:0; list-style:none; font-size:var(--account-type-meta); color:var(--muted); font-weight:var(--font-regular,400); }
.dfvn-account-layout .wc-item-meta p { display:inline; font-size:var(--account-type-meta); }
.dfvn-account-layout .detail-products tbody tr:last-child td { border-bottom:0; }
.customer-page .dfvn-account-layout .detail-total { background:var(--detail-total-bg); color:var(--detail-total-ink); }
.dfvn-account-layout .detail-total dl>div { display:flex; gap:var(--space-5); justify-content:space-between; padding:10px 0; }
.dfvn-account-layout .detail-total dt { color:#605773; }
.dfvn-account-layout .detail-total dd { text-align:right; }
.dfvn-account-layout .detail-total .total-final { border-top:1px solid #29253e26; margin-top:var(--space-4); padding-top:23px; align-items:center; }
.dfvn-account-layout .total-final dd { font-size:clamp(24px,2.2vw,32px); }
.detail-actions { display:flex; gap:var(--account-compact-gap); flex-wrap:wrap; margin-top:var(--space-6); }
.customer-page .dfvn-account-layout .detail-billing .woocommerce-customer-details { margin:0; }
.customer-page .dfvn-account-layout .detail-billing h2.woocommerce-column__title { font:var(--font-semibold,600) var(--type-small-size)/1.4 var(--body-font); color:var(--muted); margin-bottom:15px; }
.dfvn-account-layout .detail-billing address { font-style:normal; font-size:var(--account-type-body); line-height:1.8; overflow-wrap:anywhere; }
.dfvn-account-layout .detail-billing address p { margin-top:var(--space-3); }
.dfvn-account-layout .detail-billing .woocommerce-columns { display:grid; gap:26px; }
.customer-page .dfvn-account-layout .detail-help h2 { margin:var(--account-card-eyebrow-gap) 0 var(--card-title-copy-gap); }
.detail-help .button { margin-top:var(--lead-action-gap); }
.dfvn-account-layout .detail-files .woocommerce-order-downloads { margin:0; overflow-x:auto; }
.dfvn-account-layout .detail-files table { min-width:320px; }
.dfvn-account-layout .detail-files :is(th,td) { padding:12px 7px; }
.detail-notes { margin-top:var(--detail-gap); }
.detail-notes ol { padding-left:20px; }
.detail-notes li+li { margin-top:var(--space-5); }
.detail-notes time { color:var(--muted); font-size:var(--account-type-meta); }
.address-saved { display:grid; gap:var(--detail-gap); }
.address-card-head { display:flex; align-items:center; justify-content:space-between; gap:15px; margin-bottom:22px; min-height:32px; }
.address-default { padding:7px 11px; font-size:var(--account-type-caption); background:var(--bg); border-radius:var(--pill); }
.dfvn-account-layout .address-card address { font-style:normal; font-size:var(--type-emphasis-size); line-height:1.8; overflow-wrap:anywhere; }
.dfvn-account-layout .address-card .address-use { font-size:var(--account-type-meta); margin:20px 0; }
.dfvn-account-layout .address-card .button { margin-top:var(--space-4); }
.dfvn-account-layout .address-intro { margin-bottom:25px; }
.dfvn-account-layout .address-contact .detail-eyebrow { margin-bottom:17px; }
.address-contact dl { display:grid; grid-template-columns:1fr 1fr; gap:var(--space-5); }
.address-contact dd { margin-top:6px; }
.customer-page .woocommerce-MyAccount-content form:has(.woocommerce-address-fields) h2 { margin-bottom:var(--card-title-copy-gap); font-size:var(--account-section-title-size); line-height:var(--account-section-title-leading); }
.customer-page .woocommerce-address-fields__field-wrapper { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 20px; }
.customer-page .woocommerce-address-fields__field-wrapper .form-row { float:none; width:auto; min-width:0; }
.customer-page .woocommerce-address-fields__field-wrapper .form-row-wide { grid-column:1/-1; }
@media(max-width:1250px) { .detail-grid { grid-template-columns:1fr; } .detail-side { grid-template-columns:1fr 1fr; } }
@media(max-width:800px) { .detail-side,.detail-studio-head { grid-template-columns:1fr; } }
@media(max-width:580px) { .dfvn-account-layout { --detail-gap:var(--card-gap); } .detail-meta { grid-template-columns:1fr 1fr; gap:19px; } .address-contact dl,.customer-page .woocommerce-address-fields__field-wrapper { grid-template-columns:1fr; } }
/* Total colors and the single-sheet layout are independent admin choices. */
.dfvn-account-layout.total-tone-neutral { --detail-total-bg:var(--account-surface); --detail-total-ink:var(--ink); }
.dfvn-account-layout.total-tone-neutral .detail-total dt { color:var(--muted); }
.dfvn-account-layout.total-tone-neutral .detail-total .total-final { border-color:var(--line); }
.customer-page .order-detail-b { padding:clamp(24px,4vw,48px); border-radius:var(--account-panel-radius); background:var(--account-surface); }
.detail-receipt-head { display:grid; gap:var(--space-7); margin-bottom:var(--space-7); }
.detail-receipt-head>div { display:flex; align-items:center; flex-wrap:wrap; gap:18px; }
.detail-receipt-brand { display:block; width:180px; margin-right:auto; }
.detail-receipt-brand svg { width:100%; height:auto; }
.detail-receipt-head>div>.detail-eyebrow { display:none; }
.customer-page .detail-receipt-head h2 { font-size:var(--account-card-title-size); margin:0; line-height:var(--account-card-title-leading); }
.detail-receipt-head .detail-status { background:var(--bg); color:var(--ink); }
.detail-receipt-head .detail-meta { border-block:1px dashed var(--line); padding-block:24px; }
.order-detail-b .detail-grid { display:flex; flex-direction:column; gap:var(--card-gap); }
.order-detail-b .detail-main { display:contents; }
.customer-page .order-detail-b .detail-panel { padding:0; background:transparent; border-radius:0; width:100%; }
.order-detail-b .detail-products { order:1; }
.order-detail-b .detail-files { order:2; padding-top:25px!important; border-top:1px dashed var(--line)!important; }
.order-detail-b .detail-side { order:3; display:grid; width:100%; grid-template-columns:1fr 1fr; gap:var(--card-gap); border-top:1px solid var(--line); padding-top:28px; }
.order-detail-b .detail-help { order:4; padding-top:25px!important; border-top:1px dashed var(--line)!important; }
.customer-page .order-detail-b .detail-total { padding:24px; border-radius:var(--account-card-radius); background:var(--detail-total-bg); color:var(--detail-total-ink); }
.order-detail-b .detail-billing { grid-column:1; grid-row:1; }
.order-detail-b .detail-total { grid-column:2; grid-row:1; }
.order-detail-b .detail-notes { padding-top:28px!important; border-top:1px dashed var(--line)!important; }
@media(max-width:700px) { .order-detail-b .detail-side { grid-template-columns:1fr; gap:var(--card-gap); } .order-detail-b .detail-total,.order-detail-b .detail-billing { grid-column:auto; grid-row:auto; } .detail-receipt-head>div>.detail-status { margin-top:4px; } }

/* Address labels share the same baseline, size and weight. */
.address-card-head .detail-eyebrow,.address-contact>.detail-eyebrow { font:var(--font-semibold,600) var(--type-caption-size)/1.4 var(--body-font); letter-spacing:.08em; text-transform:uppercase; margin:0; }
.dfvn-account-layout .address-contact>.detail-eyebrow { display:flex; align-items:center; min-height:32px; margin-bottom:22px; }

.profile-vip-foot { display:flex; flex-direction:column; align-items:center; gap:9px; margin-top:15px; padding-top:18px; border-top:1px solid #ffffff30; font-size:var(--type-tiny-size); letter-spacing:.07em; }
.profile-vip-foot>span:last-child { display:flex; align-items:center; gap:6px; font-size:var(--account-type-caption); letter-spacing:0; }
.profile-vip-foot .dfvn-icon { width:14px; height:14px; }
.customer-page .customer-profile[data-vip-layout=b] { --profile-ink:#f7f7f2; --profile-muted:#ded8ef; justify-items:stretch; text-align:left; padding:26px 24px; }
.customer-page .customer-profile[data-vip-layout=b]>.customer-avatar { margin:0 0 8px; width:58px; height:58px; background:#ffffff18; color:#f7f7f2; border:1px solid #ffffff50; }
.customer-page .customer-profile[data-vip-layout=b]>.customer-profile-email { margin:0 0 20px; }
.customer-page .customer-profile[data-vip-layout=b] .profile-member p { text-align:left; }
.customer-page .customer-profile[data-vip-layout=b] .customer-profile-badge { background:#ffffff15; color:#f7f7f2; border:1px solid #ffffff30; font-size:var(--account-type-small); }
.customer-page .customer-profile[data-vip-layout=b] .profile-vip-foot { align-items:flex-start; }
.customer-page .customer-profile[data-vip-layout=c] { padding:25px 24px; }

.customer-page .customer-profile[data-vip-layout=c]>.customer-avatar { border:2px solid #ffffffa0; box-shadow:0 0 0 7px #ffffff30; margin-bottom:var(--space-3); }
.customer-page .customer-profile[data-vip-layout=c] .profile-vip-foot { border-color:#ffffff30; }
.customer-page .customer-profile[data-vip-layout=b][data-profile-motion=on] { animation:none; }


/* Status colors are identical in the order list and order detail. */
.customer-page :is(.dfvn-order-status,.detail-status).is-pending { background:#fff0c7; color:#765609; }
.customer-page :is(.dfvn-order-status,.detail-status).is-on-hold { background:#eee4ff; color:#654096; }
.customer-page :is(.dfvn-order-status,.detail-status).is-processing { background:#dceafa; color:#285880; }
.customer-page :is(.dfvn-order-status,.detail-status).is-completed { background:#dceedd; color:#33613c; }
.customer-page :is(.dfvn-order-status,.detail-status).is-cancelled { background:#eee4e2; color:#74524c; }
.customer-page :is(.dfvn-order-status,.detail-status).is-failed { background:#f9dedf; color:#9e353b; }
.customer-page :is(.dfvn-order-status,.detail-status).is-refunded { background:#e4e5ed; color:#555976; }

/* Compact order history: A matches Downloads, B uses one shared panel. */
.customer-page .dfvn-orders .dfvn-order-card { display:grid; align-items:center; gap:18px; min-width:0; padding:20px 24px; border:0; }
.customer-page .dfvn-orders .dfvn-order-card h2 { margin:0 0 var(--account-row-title-copy-gap); font:var(--font-semibold,600) var(--account-row-title-size)/var(--account-row-title-leading) var(--dfvn-body-font); letter-spacing:0; }
.dfvn-orders .dfvn-order-copy { min-width:0; }
.dfvn-orders .dfvn-order-products { margin:0; font-size:var(--account-type-body); font-weight:var(--font-weight); }
.dfvn-orders .dfvn-order-meta { margin-top:7px; gap:8px 16px; font-size:var(--account-type-small); }
.dfvn-orders .dfvn-order-price { font-size:var(--type-body-size); white-space:nowrap; }
.dfvn-orders .dfvn-order-symbol .dfvn-icon { width:22px; height:22px; }
.customer-page .dfvn-orders .dfvn-order-status { display:inline-flex; align-items:center; gap:6px; padding:0; background:transparent; font-size:var(--account-type-meta); font-weight:var(--font-weight); white-space:normal; }
.dfvn-orders .dfvn-order-status::before { content:''; width:6px; height:6px; border-radius:50%; flex:none; background:currentColor; }
.dfvn-orders .dfvn-order-actions { flex-wrap:wrap; justify-content:end; }
.customer-page .dfvn-orders .dfvn-order-action { gap:var(--space-2); font-size:var(--account-type-body); min-height:42px; padding:10px 18px; }
.customer-page .dfvn-orders .dfvn-order-action .dfvn-icon { width:18px; height:18px; flex:none; }
.dfvn-orders--a .dfvn-order-card { grid-template-columns:26px minmax(0,1fr) auto auto; }
.dfvn-orders--b .dfvn-orders-list { padding:8px 24px; gap:0; border-radius:var(--account-panel-radius); background:var(--account-surface,var(--surface)); }
.dfvn-orders--b .dfvn-orders-columns,.customer-page .dfvn-orders--b .dfvn-order-card { display:grid; grid-template-columns:minmax(0,1fr) 100px 120px 118px minmax(126px,auto); gap:18px; }
.dfvn-orders--b .dfvn-orders-columns { padding:18px 0; font-size:var(--account-type-meta); color:var(--muted); }
.customer-page .dfvn-orders--b .dfvn-order-card { padding:20px 0; background:transparent; border-radius:0; }
.dfvn-orders--b .dfvn-order-card+.dfvn-order-card { border-top:1px solid var(--line); }
.dfvn-order-date { color:var(--muted); font-size:var(--account-type-small); }
.detail-invoice-actions { display:flex; margin:0; }
.detail-invoice-actions .button { display:inline-flex; align-items:center; gap:var(--space-2); }
@media(max-width:1200px) {
  .dfvn-orders--b .dfvn-orders-columns { display:none; }
  .customer-page .dfvn-orders--b .dfvn-order-card { grid-template-columns:minmax(0,1fr) auto; gap:var(--account-compact-gap); }
  .dfvn-orders--b .dfvn-order-copy { grid-column:1/-1; }
  .dfvn-orders--b .dfvn-order-actions { grid-column:2; grid-row:2/5; }
  .dfvn-orders--b .dfvn-order-status { grid-column:1; }
}
@media(max-width:600px) {
  .customer-page .dfvn-orders .dfvn-order-card { gap:var(--account-compact-gap); padding:20px; }
  .dfvn-orders--a .dfvn-order-card { grid-template-columns:22px minmax(0,1fr); }
  .dfvn-orders--a .dfvn-order-price,.dfvn-orders--a .dfvn-order-actions { grid-column:2; justify-content:start; }
  .dfvn-orders .dfvn-order-products { white-space:normal; overflow:visible; }
  .customer-page .dfvn-orders--b .dfvn-order-card { padding:20px 0; }
  .dfvn-orders--b .dfvn-orders-list { padding:8px 20px; }
  .dfvn-orders .dfvn-order-actions { width:auto; }
}

/* Order actions: heading, status card, or a compact toolbar. */
.order-detail-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:22px; }
.order-detail-heading>div { min-width:0; flex:1 1 440px; }
.order-detail-actions { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:var(--account-compact-gap); }
.order-detail-actions .button:not([hidden]) { display:inline-flex; align-items:center; justify-content:center; gap:var(--space-2); min-height:44px; font-size:var(--account-type-body); }
.order-detail-actions .order-detail-reorder { --action-bg:transparent; --action-ink:var(--ink); --action-line:var(--line); color:var(--ink); background:transparent; border:1px solid var(--line); }
.order-detail-actions .dfvn-icon { width:18px; height:18px; flex:none; }
.order-detail-heading .order-detail-breadcrumb { font-size:var(--account-type-body); margin-bottom:14px; color:var(--muted); }
.order-detail-breadcrumb a { color:inherit; }.order-detail-breadcrumb strong { color:var(--ink); }
.detail-studio-head>.order-detail-actions { grid-column:1/-1; border-top:1px solid #ffffff25; padding-top:20px; }
.detail-studio-head .order-detail-actions .button { --action-bg:var(--bg); --action-ink:var(--ink); background:var(--bg); color:var(--ink); }
.detail-studio-head .order-detail-actions .order-detail-reorder { --action-bg:transparent; --action-ink:var(--detail-studio-ink); --action-line:#ffffff40; background:transparent; color:var(--detail-studio-ink); border-color:#ffffff40; }
.detail-receipt-head>.order-detail-actions { justify-content:flex-end; }
.detail-actionbar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:var(--space-4); padding:16px 22px; margin-bottom:var(--detail-gap); border:1px solid var(--line); border-radius:var(--account-card-radius); }
.detail-actionbar>span { color:var(--muted); font-size:var(--account-type-body); }
@media(max-width:700px) { .order-detail-heading { align-items:start; gap:var(--space-5); }.order-detail-heading>div { flex-basis:100%; }.order-detail-heading .order-detail-actions { justify-content:start; }.detail-actionbar .order-detail-actions { justify-content:start; } }

/* D: status and products on the left, totals and contacts on the right. */
.order-detail-d .detail-grid { grid-template-columns:minmax(0,1.45fr) minmax(300px,.85fr); }
.customer-page .order-detail-d .detail-panel { border:1px solid var(--line); background:color-mix(in srgb,var(--account-surface) 26%,var(--bg)); padding:24px; }
.customer-page .order-detail-d .detail-total { background:var(--detail-total-bg); border-color:transparent; }
.order-detail-d .detail-panel>h2 { font-size:var(--account-section-title-size); margin-bottom:var(--card-title-copy-gap); line-height:var(--account-section-title-leading); }
.customer-page .order-detail-d .detail-status-card { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); align-items:center; gap:var(--account-content-gap); background:var(--account-surface); }
.customer-page .order-detail-d .detail-status-card.is-completed { background:linear-gradient(120deg,color-mix(in srgb,var(--account-surface) 75%,#cfe1c1),var(--account-surface)); }
.detail-status-overview { display:flex; gap:18px; align-items:center; min-width:0; }
.detail-status-art { display:grid; place-items:center; width:60px; height:60px; flex:none; border-radius:50%; background:var(--bg); color:var(--muted); }
.detail-status-art .dfvn-icon { width:32px; height:32px; }
.is-completed .detail-status-art { color:#2f7b45; background:color-mix(in srgb,#cfe1c1 75%,var(--bg)); }
.detail-status-title { display:flex; align-items:center; flex-wrap:wrap; gap:var(--account-compact-gap); }
.customer-page .detail-status-title h2 { font-size:var(--account-card-title-size); margin:0; line-height:var(--account-card-title-leading); }
.detail-status-title .detail-status { padding:6px 10px; font-size:var(--account-type-caption); color:var(--ink); background:var(--bg); }
.detail-status-overview p { margin-top:var(--space-3); color:var(--muted); font-size:var(--account-type-small); }
.detail-status-meta { display:grid; grid-template-columns:1fr 1fr; gap:var(--space-5); }
.detail-status-meta dt { display:flex; align-items:center; gap:7px; color:var(--muted); font-size:var(--account-type-meta); }
.detail-status-meta dt .dfvn-icon { width:17px; height:17px; }
.detail-status-meta dd { margin:10px 0 0; font-size:var(--account-type-body); font-weight:var(--font-semibold,600); overflow-wrap:anywhere; }
.detail-status-meta small { display:block; font-size:var(--account-type-meta); font-weight:var(--font-regular,400); margin-top:4px; color:var(--muted); }
.detail-status-card>.order-detail-actions { grid-column:1/-1; border-top:1px solid var(--line); padding-top:16px; }
.order-detail-d .detail-products td { vertical-align:middle; border-bottom:1px solid var(--line); padding-block:16px; }
.detail-product-art { display:grid; place-items:center; float:left; margin-right:18px; width:72px; height:72px; border-radius:14px; background:var(--account-surface); font:var(--font-semibold,600) 38px/1 var(--dfvn-title-font,var(--body-font)); }
.detail-product-art img { display:block; width:100%; height:100%; object-fit:cover; border-radius:inherit; }
.order-detail-d .product-quantity { display:inline-flex; align-items:center; padding:5px 9px; margin-left:8px; border-radius:10px; background:var(--account-surface); font-size:var(--account-type-meta); }
.order-detail-d .detail-products .product-total { white-space:nowrap; font-weight:var(--font-semibold,600); }
.order-detail-d .dfvn-order-files { background:transparent; padding:0; border-radius:0; overflow:visible; }
.order-detail-d .dfvn-order-files summary { font-size:var(--account-type-meta); }
.order-detail-d .dfvn-order-files-list { display:grid; gap:var(--account-compact-gap); border-top:0; }
.order-detail-d .dfvn-order-file { display:grid; grid-template-columns:44px minmax(0,1fr) auto; align-items:center; gap:12px 16px; padding:18px; border:1px solid var(--line); border-radius:16px; background:var(--bg); }
.detail-download-art { grid-column:1; grid-row:1/3; display:grid; place-items:center; width:44px; height:48px; border-radius:12px; background:var(--account-surface); }
.detail-download-art .dfvn-icon { width:24px; height:24px; }
.order-detail-d .dfvn-order-file-cell { min-width:0; font-size:var(--account-type-meta); }
.order-detail-d .download-product { grid-column:2; grid-row:1; font-size:var(--account-type-body); font-weight:var(--font-semibold,600); }
.detail-download-name { display:block; font-size:var(--account-type-caption); font-weight:var(--font-regular,400); color:var(--muted); margin-top:5px; overflow-wrap:anywhere; }
.order-detail-d .download-file { grid-column:3; grid-row:1; }.order-detail-d .download-file .button { display:inline-flex; align-items:center; gap:var(--space-2); font-size:var(--account-type-small); }
.order-detail-d .download-remaining { grid-column:2; }.order-detail-d .download-expires { grid-column:3; }
.order-detail-d .detail-contact-list { display:grid; gap:var(--space-5); }
.detail-contact-list>div { display:grid; grid-template-columns:minmax(115px,.8fr) minmax(0,1.2fr); gap:14px; }
.detail-contact-list dt { display:flex; align-items:start; gap:9px; font-size:var(--account-type-small); color:var(--muted); }
.detail-contact-list .dfvn-icon { width:18px; height:18px; flex:none; }
.detail-contact-list dd { font-size:var(--account-type-body); margin:0; overflow-wrap:anywhere; }
.customer-page .order-detail-d .detail-help { display:grid; grid-template-columns:48px minmax(0,1fr) auto; align-items:center; gap:18px; background:var(--account-surface); }
.detail-help-art { display:grid; place-items:center; width:48px; height:48px; border-radius:50%; background:var(--bg); }.detail-help-art .dfvn-icon { width:26px; height:26px; }
.order-detail-d .detail-help .detail-eyebrow { display:none; }.customer-page .order-detail-d .detail-help h2 { font-size:var(--account-card-title-size); margin:0 0 var(--account-row-title-copy-gap); line-height:var(--account-card-title-leading); }.order-detail-d .detail-help p { color:var(--muted); font-size:var(--account-type-small); }.order-detail-d .detail-help .button { margin:0; white-space:nowrap; font-size:var(--account-type-small); }
.detail-manage-banner { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:var(--account-content-gap); padding:30px; margin-top:var(--detail-gap); border-radius:var(--account-panel-radius); background:linear-gradient(120deg,var(--account-surface),color-mix(in srgb,var(--lavender) 35%,var(--bg))); }
.detail-manage-banner h2 { font-size:var(--account-card-title-size); margin:var(--card-title-copy-gap) 0; line-height:var(--account-card-title-leading); }.detail-manage-banner p { font-size:var(--account-type-body); color:var(--muted); }.detail-manage-banner .button { flex:none; }
@media(max-width:1450px) { .customer-page .order-detail-d .detail-status-card { grid-template-columns:1fr; } }
@media(max-width:1250px) { .order-detail-d .detail-grid { grid-template-columns:1fr; }.order-detail-d .detail-side { grid-template-columns:1fr 1fr; } }
@media(max-width:800px) { .order-detail-d .detail-side { grid-template-columns:1fr; }.customer-page .order-detail-d .detail-help { grid-template-columns:48px minmax(0,1fr); }.order-detail-d .detail-help .button { grid-column:2; justify-self:start; }.detail-manage-banner { padding:24px; } }
@media(max-width:580px) { .detail-product-art { width:48px; height:48px; margin-right:12px; font-size:28px; }.order-detail-d .detail-products { overflow-x:auto; }.order-detail-d .detail-products table { min-width:270px; }.order-detail-d .dfvn-order-file { padding:14px; grid-template-columns:36px minmax(0,1fr); gap:var(--account-compact-gap); }.detail-download-art { width:36px; height:42px; }.order-detail-d .download-file { grid-column:2; grid-row:auto; }.order-detail-d .download-remaining,.order-detail-d .download-expires { grid-column:2; }.detail-status-meta { gap:var(--space-4); }.detail-contact-list>div { grid-template-columns:1fr; gap:var(--space-2); } }

/* Dashboard: compact metrics, native recent orders and a useful font library. */
.account-overview { display:grid; gap:var(--account-content-gap); min-width:0; }
.account-overview-heading { display:flex; align-items:center; justify-content:space-between; gap:var(--account-content-gap); padding:var(--account-panel-pad); margin:0; border-radius:var(--account-panel-radius); background:var(--account-surface); }
.account-overview-heading h1 { margin:var(--account-card-eyebrow-gap) 0 0; overflow-wrap:anywhere; }
.account-overview-heading p { margin:var(--account-title-lead-gap) 0 0; font-size:var(--account-lead-size); line-height:var(--account-lead-leading); }
.account-overview-heading[data-overview-heading="new"] { padding:0; background:transparent; border-radius:0; }
/* This choice changes only the new dashboard's greeting card. */
.account-overview-heading--classic h1 { max-width:700px; margin:var(--eyebrow-title-gap) 0 0; font-size:var(--account-title-size); line-height:var(--account-title-leading); }
.account-overview-heading--classic p { color:var(--paragraph-ink); }
.account-settings-link,.account-overview-panel>header>a,.account-inline-link { display:inline-flex; align-items:center; gap:7px; font-size:var(--account-type-small); white-space:nowrap; }
.account-overview .dfvn-icon { width:18px; height:18px; flex-shrink:0; }
.account-settings-link { padding:12px 16px; border:1px solid var(--line); border-radius:var(--button-radius,999px); }
.account-overview-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--account-compact-gap); }
.account-overview-stats>a { display:flex; align-items:center; gap:var(--account-compact-gap); min-width:0; padding:20px 16px; background:var(--account-surface); border-radius:18px; transition:background var(--account-motion),transform var(--account-motion); }
.account-overview-stats>a:hover { background:color-mix(in srgb,var(--account-surface) 80%,var(--lavender,var(--accent))); transform:translateY(-2px); }
.account-overview-stats>a>span:nth-child(2) { display:grid; gap:7px; min-width:0; flex:1; }
.account-overview-stats small { color:var(--muted); font-size:var(--account-type-meta); line-height:1.4; }
.account-overview-stats strong { font-size:28px; line-height:1; font-weight:var(--font-semibold,600); font-variant-numeric:tabular-nums; }
.account-stat-icon,.account-callout-icon { display:grid; place-items:center; flex-shrink:0; width:40px; height:40px; background:var(--bg); border-radius:12px; }
.account-overview-stats>a>.dfvn-icon { width:14px; height:14px; }
.account-payment-callout { display:flex; align-items:center; gap:18px; padding:22px 24px; background:color-mix(in srgb,var(--lavender,var(--accent)) 40%,var(--account-surface)); border-radius:var(--account-panel-radius); }
.account-payment-callout>div { flex:1; min-width:0; }
.account-payment-callout h2 { font-size:var(--account-row-title-size); margin:0 0 var(--space-2); line-height:var(--account-row-title-leading); }
.account-payment-callout p { margin:0; font-size:var(--account-type-small); line-height:var(--account-copy-leading); color:var(--paragraph-ink); }
.account-payment-callout .button { flex-shrink:0; gap:9px; font-size:var(--account-type-small); }
.account-overview-grid { display:grid; grid-template-columns:minmax(0,1fr); align-items:start; gap:var(--account-content-gap); }
.account-overview-panel { padding:26px; background:var(--account-surface); border-radius:var(--account-panel-radius); min-width:0; }
.account-overview-panel>header { display:flex; align-items:center; justify-content:space-between; gap:var(--account-compact-gap); margin-bottom:var(--account-content-gap); }
.account-overview .eyebrow { font-size:var(--account-type-micro); letter-spacing:.09em; }
.account-overview-panel h2 { font-size:var(--account-card-title-size); line-height:var(--account-card-title-leading); margin:var(--account-card-eyebrow-gap) 0 0; letter-spacing:-.025em; }
.account-overview-panel>header>a { font-size:var(--account-type-meta); }
.account-overview-side { display:grid; gap:var(--account-content-gap); }
.account-recent-order { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:23px 0; border-top:1px solid var(--line); }
.account-recent-order:last-child { padding-bottom:0; }
.account-recent-order>div:first-child { min-width:0; }
.account-order-line { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.account-order-line>strong { font-size:var(--type-label-size); }
.account-overview .dfvn-order-status { font-size:var(--account-type-micro); padding:5px 9px; }
.account-recent-order p { font-size:var(--account-type-small); line-height:1.55; margin:10px 0 7px; overflow-wrap:anywhere; }
.account-recent-order small { color:var(--muted); font-size:var(--account-type-meta); }
.account-recent-amount { display:grid; flex-shrink:0; justify-items:end; gap:var(--account-compact-gap); }
.account-recent-amount>strong { white-space:nowrap; font-size:var(--account-type-body); font-variant-numeric:tabular-nums; }
.account-recent-amount>span { display:inline-flex; align-items:center; gap:6px; font-size:var(--account-type-meta); color:var(--muted); }
.account-font-row { display:flex; gap:13px; align-items:center; padding:16px 0; border-top:1px solid var(--line); min-width:0; }
.account-font-row:last-child { padding-bottom:0; }
.account-font-cover { display:grid; place-items:center; flex-shrink:0; width:64px; height:55px; border-radius:10px; overflow:hidden; background:var(--bg); font:var(--font-semibold,600) 24px var(--dfvn-title-font); }
.account-font-cover img { width:100%; height:100%; object-fit:cover; }
.account-font-row>span:nth-child(2) { flex:1; display:grid; gap:var(--account-row-title-copy-gap); min-width:0; }
.account-font-row strong { font-size:var(--account-type-small); line-height:1.4; overflow-wrap:anywhere; }
.account-font-row small { color:var(--muted); font-size:var(--account-type-caption); }
.account-font-row>.dfvn-icon { width:14px; height:14px; }
.account-overview-hint { padding-top:14px; border-top:1px solid var(--line); color:var(--muted); font-size:var(--account-type-body); line-height:1.7; }
.account-overview-empty { display:grid; justify-items:start; gap:14px; border-top:1px solid var(--line); padding-top:26px; }
.account-overview-empty>.dfvn-icon { width:32px; height:32px; }
.account-overview-empty h3 { font-size:var(--account-card-title-size); margin:0; line-height:var(--account-card-title-leading); }
.account-overview-empty p { color:var(--muted); font-size:var(--account-type-body); margin:0; line-height:var(--account-copy-leading); }
.account-overview-empty .button { font-size:var(--account-type-small); }
.account-overview a:focus-visible { outline:var(--account-focus-width) solid var(--ink); outline-offset:var(--account-focus-offset); }
@media (max-width:1200px) { .account-overview-stats { grid-template-columns:repeat(2,minmax(0,1fr)); } .account-overview-grid { grid-template-columns:1fr; } .account-overview-side { grid-template-columns:repeat(2,minmax(0,1fr)); } .account-overview-panel>header { align-items:start; flex-direction:column; } }
@media (max-width:600px) { .account-overview { gap:18px; } .account-overview-heading { align-items:start; flex-direction:column; gap:14px; } .account-settings-link { font-size:var(--account-type-meta); } .account-overview-stats { gap:10px; } .account-overview-stats>a { padding:16px 12px; gap:10px; } .account-overview-stats>a>.dfvn-icon { display:none; } .account-stat-icon { width:32px; height:32px; border-radius:10px; } .account-overview-stats strong { font-size:25px; } .account-overview-side { grid-template-columns:1fr; gap:18px; } .account-overview-panel { padding:22px 18px; } .account-overview-panel>header { flex-direction:row; align-items:center; } .account-overview-panel>header>a { font-size:var(--account-type-caption); gap:3px; } .account-overview-panel h2 { font-size:var(--account-card-title-size); line-height:var(--account-card-title-leading); } .account-payment-callout { flex-wrap:wrap; padding:20px; gap:var(--account-compact-gap); } .account-payment-callout>div { flex-basis:calc(100% - 55px); } .account-payment-callout .button { width:100%; } .account-recent-order { gap:var(--account-compact-gap); } .account-recent-order p { max-width:190px; } .account-recent-amount>strong { font-size:var(--account-type-meta); } }
@media (max-width:359px) { .account-overview-panel>header { flex-direction:column; align-items:start; } .account-recent-order { align-items:start; flex-direction:column; } .account-recent-amount { display:flex; width:100%; justify-content:space-between; align-items:center; } }
@media (prefers-reduced-motion:reduce) { .account-overview-stats>a:hover { transform:none; } }

/* Membership actions share the heading row with its title and introduction. */
.customer-membership-heading { display:flex; align-items:center; justify-content:space-between; gap:var(--account-content-gap); flex-wrap:wrap; }
.customer-membership-heading>div { flex:1 1 340px; min-width:0; }
.customer-membership-heading .member-account-actions { flex:0 1 auto; gap:var(--account-compact-gap); }
.customer-membership-heading .button { white-space:nowrap; }
@media(max-width:700px) { .customer-membership-heading { gap:18px; }.customer-membership-heading .member-account-actions { justify-content:flex-start; gap:10px; }.customer-membership-heading .button { font-size:var(--account-type-small); } }

/* A quiet linking prompt, with the existing OAuth action as its only button. */
.customer-page .dfvn-google-account { display:flex; align-items:center; gap:14px; padding:16px 20px; font-size:var(--account-type-body); }
.dfvn-google-account-icon { display:grid; place-items:center; flex:0 0 38px; width:38px; height:38px; border-radius:12px; background:color-mix(in srgb,var(--ink) 6%,transparent); color:var(--ink); font:var(--font-bold,700) 25px/1 Arial,sans-serif; }
.dfvn-google-account-icon>svg { width:23px; height:23px; }
.dfvn-google-account p { flex:1; min-width:0; margin:0; font-size:var(--account-type-body); line-height:1.55; }
.dfvn-google-account .button { flex:none; min-height:42px; padding:10px 18px; font-size:var(--account-type-small); }
.dfvn-google-linked-state { display:inline-flex; align-items:center; gap:7px; color:var(--muted); font-size:var(--account-type-meta); }
.dfvn-google-linked-state>.dfvn-icon { width:18px; height:18px; }
@media(max-width:600px) { .customer-page .dfvn-google-account { flex-wrap:wrap; padding:16px; gap:var(--account-compact-gap); }.dfvn-google-account p { flex-basis:calc(100% - 50px); }.dfvn-google-account .button,.dfvn-google-linked-state { margin-left:50px; } }
