/**
 * Customer dashboard (My Account) — full re-skin of WooCommerce's default
 * account pages so nothing reads as "default WooCommerce": custom sidebar
 * nav + dashboard markup (see woocommerce/myaccount/navigation.php and
 * dashboard.php), and !important overrides everywhere WooCommerce's own
 * plugin CSS would otherwise win on specificity (same pattern as the
 * price-badge fix in woo.css — WC's own selectors are quite specific).
 */

.woocommerce-account main.dma-container {
	max-width: 1160px;
	padding-top: 40px !important;
	padding-bottom: 80px !important;
}

/* Flexbox rather than grid: WooCommerce's own account markup carries
   default float/width rules on the nav and content columns that fought
   a grid layout in ways that were hard to fully pin down (columns and
   rows resolving out of DOM order). Flex with explicit basis/order on
   each column is more resilient to that and easier to force with
   !important, so it's used here instead. */
.woocommerce-account .woocommerce {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap;
	gap: 32px;
	align-items: flex-start;
	color: var(--dma-text) !important;
}

/* ---- Sidebar nav ---- */
.dma-account-nav-a3655c67 {
	background: var(--dma-surface);
	border: 1px solid var(--dma-border);
	border-radius: 12px;
	padding: 24px 0;
	position: sticky;
	top: 90px;
	flex: 0 0 260px !important;
	width: 260px !important;
	order: 1 !important;
}
.dma-account-nav-head-a3655c67 { display: flex; align-items: center; gap: 12px; padding: 0 20px 20px; margin-bottom: 8px; border-bottom: 1px solid var(--dma-border); }
.dma-account-nav-avatar-a3655c67 { width: 36px; height: 36px; border-radius: 50%; background: var(--dma-accent-dim); color: var(--dma-accent); display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 14px; flex-shrink: 0; }
.dma-account-nav-name-a3655c67 { font-size: 13px; font-weight: 700; color: var(--dma-heading); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dma-account-nav-a3655c67 ul { list-style: none; margin: 0; padding: 0; }
.dma-account-nav-a3655c67 li { margin: 0; }
.dma-account-nav-a3655c67 li a {
	display: block; padding: 11px 20px; font-size: 13px; font-weight: 600;
	color: var(--dma-text-muted) !important; text-decoration: none !important;
	border-left: 2px solid transparent;
}
.dma-account-nav-a3655c67 li a:hover { color: var(--dma-heading) !important; background: var(--dma-hover-tint); }
.dma-account-nav-a3655c67 li.is-active a { color: var(--dma-heading) !important; border-left-color: var(--dma-accent); background: var(--dma-accent-dim); }
.dma-account-nav-a3655c67 li.woocommerce-MyAccount-navigation-link--customer-logout a { color: var(--dma-accent) !important; }
.dma-account-nav-track-a3655c67 { display: block; margin: 20px 20px 0; padding: 10px; text-align: center; border: 1px solid var(--dma-border); border-radius: 8px; font-size: 12px; font-weight: 700; color: var(--dma-accent) !important; text-decoration: none !important; text-transform: uppercase; letter-spacing: .03em; }
.dma-account-nav-track-a3655c67:hover { border-color: var(--dma-accent); }

/* ---- Content column ---- */
/* WooCommerce's own default stylesheet floats this column (float:right;
   width:75%) for its classic non-grid layout. Grid ignores float on a
   grid item but not the width, so without this reset the column shrinks
   to a stray percentage instead of filling the grid track. */
.woocommerce-account .woocommerce-MyAccount-content {
	float: none !important;
	width: auto !important;
	min-width: 0;
	flex: 1 1 0% !important;
	order: 2 !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation {
	float: none !important;
	min-width: 0;
}

/* ---- Dashboard ---- */
.dma-account-welcome-a3655c67 h2 { font-size: 22px; font-weight: 800; color: var(--dma-heading); margin: 0 0 6px; }
.dma-account-welcome-a3655c67 p { font-size: 13px; color: var(--dma-text-muted); margin: 0 0 28px; }
.dma-account-welcome-a3655c67 p a { color: var(--dma-accent) !important; }

.dma-account-latest-order-a3655c67 {
	display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap;
	background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 10px;
	padding: 18px 22px; margin-bottom: 28px;
}
.dma-account-latest-label-a3655c67 { display: block; font-size: 11px; color: var(--dma-text-muted); text-transform: uppercase; letter-spacing: .05em; margin-bottom: 6px; }
.dma-account-latest-num-a3655c67 { font-size: 16px; font-weight: 800; color: var(--dma-heading); margin-right: 12px; }

.dma-account-cards-a3655c67 { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 14px; }
.dma-account-card-a3655c67 {
	display: block; background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 10px;
	padding: 20px; text-decoration: none !important; transition: border-color .15s;
}
.dma-account-card-a3655c67:hover { border-color: var(--dma-accent); }
.dma-account-card-a3655c67 h3 { font-size: 14px; font-weight: 700; color: var(--dma-heading) !important; margin: 0 0 6px; }
.dma-account-card-a3655c67 p { font-size: 12px; color: var(--dma-text-muted) !important; margin: 0; line-height: 1.5; }

/* ---- Notices ---- */
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-error,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-NoticeGroup {
	background: var(--dma-surface) !important; border: 1px solid var(--dma-border) !important;
	border-left: 3px solid var(--dma-accent) !important; color: var(--dma-text) !important;
	border-radius: 8px !important; padding: 14px 18px !important; font-size: 13px !important;
	list-style: none !important; margin: 0 0 20px !important;
}
.woocommerce-account .woocommerce-message::before,
.woocommerce-account .woocommerce-error::before,
.woocommerce-account .woocommerce-info::before { display: none !important; }
.woocommerce-account .woocommerce-Button,
.woocommerce-account .woocommerce-message .button { margin-left: 12px !important; }

/* ---- Orders table ---- */
.woocommerce-account table.woocommerce-orders-table,
.woocommerce-account table.shop_table {
	width: 100% !important; border-collapse: collapse !important; background: var(--dma-surface) !important;
	border: 1px solid var(--dma-border) !important; border-radius: 10px !important; overflow: hidden;
}
.woocommerce-account table.woocommerce-orders-table thead th,
.woocommerce-account table.shop_table thead th {
	background: var(--dma-bg) !important; color: var(--dma-text-muted) !important; font-size: 11px !important;
	text-transform: uppercase !important; letter-spacing: .04em !important; font-weight: 700 !important;
	padding: 14px 16px !important; border-bottom: 1px solid var(--dma-border) !important; text-align: left !important;
}
.woocommerce-account table.woocommerce-orders-table tbody td,
.woocommerce-account table.shop_table tbody td {
	padding: 14px 16px !important; border-bottom: 1px solid var(--dma-border) !important;
	color: var(--dma-text) !important; font-size: 13px !important;
}
.woocommerce-account table.woocommerce-orders-table tbody tr:last-child td,
.woocommerce-account table.shop_table tbody tr:last-child td { border-bottom: none !important; }
.woocommerce-account .woocommerce-orders-table__cell-order-status mark { background: none !important; color: inherit !important; font-weight: 700; }
.woocommerce-account .button,
.woocommerce-account a.button,
.woocommerce-account button.button,
.woocommerce-account input.button {
	background: transparent !important; color: var(--dma-accent) !important; border: 1px solid var(--dma-accent) !important;
	border-radius: 6px !important; padding: 8px 16px !important; font-size: 12px !important; font-weight: 700 !important;
	text-transform: uppercase !important; letter-spacing: .03em !important; text-decoration: none !important;
	box-shadow: none !important; cursor: pointer;
}
.woocommerce-account .button:hover,
.woocommerce-account a.button:hover,
.woocommerce-account button.button:hover,
.woocommerce-account input.button:hover { background: var(--dma-accent) !important; color: #fff !important; }

/* ---- View order / order details ---- */
.woocommerce-account .woocommerce-order-details,
.woocommerce-account .woocommerce-customer-details,
.woocommerce-account .woocommerce-order-downloads {
	background: var(--dma-surface) !important; border: 1px solid var(--dma-border) !important;
	border-radius: 10px !important; padding: 24px !important; margin-bottom: 24px !important;
}
.woocommerce-account .woocommerce-order-details h2,
.woocommerce-account .woocommerce-customer-details h2,
.woocommerce-account .woocommerce-order-downloads h2 {
	font-size: 15px !important; font-weight: 700 !important; color: var(--dma-heading) !important; margin: 0 0 16px !important;
	text-transform: uppercase; letter-spacing: .03em;
}
.woocommerce-account .woocommerce-column__title { color: var(--dma-heading) !important; font-size: 13px !important; }
.woocommerce-account address { color: var(--dma-text-muted) !important; font-size: 13px !important; line-height: 1.7; font-style: normal; }
.woocommerce-account .woocommerce-columns { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 20px; }

/* ---- Addresses ---- */
.woocommerce-account .woocommerce-Addresses { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 20px; }
.woocommerce-account .woocommerce-Address {
	background: var(--dma-surface) !important; border: 1px solid var(--dma-border) !important;
	border-radius: 10px !important; padding: 22px !important;
}
.woocommerce-account .woocommerce-Address-title h2 { display: inline; font-size: 14px !important; font-weight: 700; color: var(--dma-heading) !important; }
.woocommerce-account .woocommerce-Address-title .edit { float: right; }

/* ---- Forms (edit account, addresses, login/register) ---- */
.woocommerce-account form .form-row { margin-bottom: 16px !important; }
.woocommerce-account form label { display: block !important; font-size: 12px !important; font-weight: 600 !important; color: var(--dma-text-muted) !important; margin-bottom: 6px !important; text-transform: uppercase; letter-spacing: .03em; }
.woocommerce-account form .required { color: var(--dma-accent) !important; text-decoration: none; }
.woocommerce-account form input.input-text,
.woocommerce-account form textarea,
.woocommerce-account form select {
	width: 100% !important; background: var(--dma-bg) !important; border: 1px solid var(--dma-border) !important;
	border-radius: 8px !important; padding: 11px 14px !important; color: var(--dma-heading) !important; font-size: 13px !important;
	box-shadow: none !important;
}
.woocommerce-account form input.input-text:focus,
.woocommerce-account form textarea:focus,
.woocommerce-account form select:focus { border-color: var(--dma-accent) !important; outline: none !important; }
.woocommerce-account form fieldset { border: 1px solid var(--dma-border) !important; border-radius: 10px !important; padding: 18px !important; margin: 20px 0 !important; }
.woocommerce-account form fieldset legend { color: var(--dma-heading) !important; font-size: 13px !important; font-weight: 700 !important; padding: 0 8px !important; }
.woocommerce-account form .woocommerce-form-row,
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register {
	background: var(--dma-surface) !important; border: 1px solid var(--dma-border) !important;
	border-radius: 10px !important; padding: 28px !important; max-width: 420px;
}
.woocommerce-account .woocommerce-form-login .woocommerce-form-login__rememberme { color: var(--dma-text-muted) !important; font-size: 12px !important; display: flex; align-items: center; gap: 8px; }
.woocommerce-account .woocommerce-LostPassword { font-size: 12px !important; margin-top: 12px !important; }
.woocommerce-account .woocommerce-LostPassword a { color: var(--dma-accent) !important; }
.woocommerce-account .u-columns { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 24px; }
.woocommerce-account .col-1, .woocommerce-account .col-2 { width: auto !important; float: none !important; }

/* ---- Downloads table ---- */
.woocommerce-account .woocommerce-MyAccount-downloads table a.woocommerce-MyAccount-downloads-file { color: var(--dma-accent) !important; font-weight: 700; }

/* ---- Pagination ---- */
.woocommerce-account .woocommerce-pagination { margin-top: 20px; }
.woocommerce-account .woocommerce-pagination .woocommerce-button { color: var(--dma-text-muted) !important; }

/* ---- My Devices (inc/account-devices.php + woocommerce/myaccount/devices.php) ---- */
.dma-account-devices-a3655c67 { display: flex; flex-direction: column; gap: 14px; }
.dma-device-card-a3655c67 {
	display: flex; align-items: center; gap: 20px; flex-wrap: wrap;
	background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 10px; padding: 18px 22px;
}
.dma-device-media-a3655c67 {
	width: 64px; height: 64px; flex-shrink: 0; background: var(--dma-image-bg); border: 1px solid var(--dma-border);
	border-radius: 8px; overflow: hidden; display: flex; align-items: center; justify-content: center;
}
.dma-device-media-a3655c67 img { width: 100%; height: 100%; object-fit: contain; display: block; }
.dma-device-body-a3655c67 { flex: 1 1 240px; min-width: 0; }
.dma-device-body-a3655c67 h3 { font-size: 15px; font-weight: 700; margin: 0 0 4px; }
.dma-device-body-a3655c67 h3 a { color: var(--dma-heading) !important; text-decoration: none !important; }
.dma-device-body-a3655c67 h3 a:hover { color: var(--dma-accent) !important; }
.dma-device-variant-a3655c67 { font-size: 12px; color: var(--dma-text-muted) !important; margin: 0 0 6px; }
.dma-device-meta-a3655c67 { font-size: 12px; color: var(--dma-text-muted) !important; margin: 0; }
.dma-device-meta-a3655c67 a { color: var(--dma-accent) !important; font-weight: 600; text-decoration: none !important; }
.dma-device-meta-a3655c67 a:hover { text-decoration: underline !important; }
.dma-device-actions-a3655c67 { display: flex; gap: 10px; flex-wrap: wrap; margin-left: auto; }
.dma-device-actions-a3655c67 .dma-btn-a3655c67 { margin-top: 0; padding: 9px 14px; }

.dma-device-activation-a3655c67 {
	flex: 1 1 100%; border-top: 1px solid var(--dma-border); margin-top: 4px; padding-top: 14px;
	display: flex; flex-direction: column; gap: 10px;
}
.dma-device-activation-list-a3655c67 { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.dma-device-activation-list-a3655c67 li {
	display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 12px;
}
.dma-device-activation-serial-a3655c67 { font-family: monospace; font-weight: 700; color: var(--dma-heading) !important; letter-spacing: 0.03em; }
.dma-device-activation-status-a3655c67 { font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; font-size: 10px; padding: 3px 8px; border-radius: 4px; }
.dma-device-activation-status-a3655c67.is-active-a3655c67 { color: #5fd97a; background: rgba(95,217,122,.1); }
.dma-device-activation-status-a3655c67.is-expired-a3655c67 { color: #ef524e; background: rgba(239,82,78,.1); }
.dma-device-activation-dates-a3655c67 { color: var(--dma-text-muted) !important; }
.dma-activate-form-a3655c67 { display: flex; flex-direction: column; gap: 8px; }
.dma-activate-form-a3655c67 label { font-size: 12px; color: var(--dma-text-muted) !important; }
.dma-activate-row-a3655c67 { display: flex; gap: 10px; flex-wrap: wrap; }
.dma-activate-input-a3655c67 {
	flex: 1 1 200px; background: var(--dma-bg); border: 1px solid var(--dma-border); border-radius: 6px;
	padding: 10px 14px; color: var(--dma-heading); font-size: 13px; font-family: var(--dma-font);
}
.dma-activate-input-a3655c67:focus { outline: none; border-color: var(--dma-accent); }
.dma-activate-submit-a3655c67 { margin-top: 0; padding: 9px 18px; }
.dma-activate-msg-a3655c67 { font-size: 12px; color: #5fd97a; margin: 0; }
.dma-activate-msg-a3655c67.dma-activate-msg--error-a3655c67 { color: #ef524e; }

.dma-account-devices-empty-a3655c67 {
	background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 10px;
	padding: 48px 24px; text-align: center;
}
.dma-account-devices-empty-a3655c67 h3 { font-size: 16px; font-weight: 700; color: var(--dma-heading); margin: 0 0 8px; }
.dma-account-devices-empty-a3655c67 p { font-size: 13px; color: var(--dma-text-muted); margin: 0 auto 20px; max-width: 380px; line-height: 1.6; }
.dma-account-devices-empty-a3655c67 .dma-btn-a3655c67 { display: inline-block; margin-top: 0; }

.dma-device-support-cta-a3655c67 {
	display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap;
	margin-top: 6px; padding: 20px 22px; background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 10px;
}
.dma-device-support-cta-a3655c67 p { font-size: 13px; color: var(--dma-text-muted) !important; margin: 0; }
.dma-device-support-cta-a3655c67 .dma-btn-a3655c67 { margin-top: 0; }

/* ---- Status pill base (pages.css defines this too, for content pages —
   account pages don't load pages.css, so the dashboard's "Most Recent
   Order" pill and the Returns list below both need their own copy here). ---- */
.dma-track-status-pill-a3655c67 { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; padding: 5px 12px; border-radius: 20px; background: var(--dma-accent-dim); color: var(--dma-accent); }
.dma-track-status--completed { background: rgba(95,217,122,.1); color: #5fd97a; }
.dma-track-status--cancelled, .dma-track-status--failed { background: rgba(255,107,107,.1); color: #ff6b6b; }

/* ---- Returns / RMA (inc/rma.php + woocommerce/myaccount/returns.php) ---- */
.dma-account-rma-a3655c67 { display: flex; flex-direction: column; gap: 14px; }
.dma-rma-section-title-a3655c67 { font-size: 14px; font-weight: 700; color: var(--dma-heading) !important; margin: 18px 0 2px; }
.dma-rma-section-title-a3655c67:first-child { margin-top: 0; }

.dma-rma-list-a3655c67 { display: flex; flex-direction: column; gap: 10px; margin-bottom: 8px; }
.dma-rma-item-a3655c67 {
	display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap;
	background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 10px; padding: 16px 20px;
}
.dma-rma-item-body-a3655c67 h4 { font-size: 14px; font-weight: 700; color: var(--dma-heading) !important; margin: 0 0 4px; }
.dma-rma-item-meta-a3655c67 { font-size: 12px; color: var(--dma-text-muted) !important; margin: 0; }
.dma-rma-item-meta-a3655c67 a { color: var(--dma-accent) !important; font-weight: 600; text-decoration: none !important; }
.dma-rma-item-meta-a3655c67 a:hover { text-decoration: underline !important; }
.dma-rma-item-actions-a3655c67 { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.dma-rma-item-actions-a3655c67 .dma-btn-a3655c67 { margin-top: 0; padding: 8px 14px; }

.dma-rma-status--pending_review, .dma-rma-status--awaiting_supplier_label { background: rgba(239,82,78,.1) !important; color: #ef524e !important; }
.dma-rma-status--label_issued, .dma-rma-status--return_shipped, .dma-rma-status--received { background: rgba(95,167,217,.12) !important; color: #5fa7d9 !important; }
.dma-rma-status--resolved { background: rgba(95,217,122,.1) !important; color: #5fd97a !important; }
.dma-rma-status--rejected { background: rgba(255,255,255,.08) !important; color: var(--dma-text-muted) !important; }

.dma-rma-form-a3655c67 {
	display: flex; flex-direction: column; gap: 14px; max-width: 520px;
	background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 10px; padding: 20px 22px;
}
.dma-rma-form-row-a3655c67 { display: flex; flex-direction: column; gap: 6px; }
.dma-rma-form-row-a3655c67 label { font-size: 12px; font-weight: 600; color: var(--dma-text-muted) !important; }
.dma-rma-form-row-a3655c67 select,
.dma-rma-form-row-a3655c67 textarea,
.dma-rma-form-row-a3655c67 input[type="file"] {
	background: var(--dma-bg); border: 1px solid var(--dma-border); border-radius: 6px;
	padding: 10px 14px; color: var(--dma-heading); font-size: 13px; font-family: var(--dma-font);
}
.dma-rma-form-row-a3655c67 select:focus, .dma-rma-form-row-a3655c67 textarea:focus { outline: none; border-color: var(--dma-accent); }
.dma-rma-form-row-a3655c67 select:disabled { opacity: 0.5; }
.dma-rma-form-row-a3655c67 textarea { resize: vertical; font-family: var(--dma-font); }
.dma-rma-submit-a3655c67 { align-self: flex-start; margin-top: 0; }
.dma-rma-msg-a3655c67 { font-size: 12px; color: #5fd97a; margin: 0; }

@media (max-width: 600px) {
	.dma-rma-item-a3655c67 { flex-direction: column; align-items: flex-start; }
	.dma-rma-form-a3655c67 { max-width: none; }
}

@media (max-width: 860px) {
	.woocommerce-account .woocommerce { flex-direction: column !important; }
	.dma-account-nav-a3655c67 { position: static; width: 100% !important; }
}

@media (max-width: 600px) {
	.dma-device-card-a3655c67 { flex-direction: column; align-items: flex-start; }
	.dma-device-actions-a3655c67 { margin-left: 0; width: 100%; }
	.dma-device-actions-a3655c67 .dma-btn-a3655c67 { flex: 1 1 auto; text-align: center; }
}

/* ---- Discord-only login (inc/discord-auth.php + woocommerce/myaccount/form-login.php) ---- */
.dma-discord-login-a3655c67 { display: flex; flex-direction: column; align-items: center; gap: 16px; padding: 10px 0 30px; }
.dma-discord-login-card-a3655c67 {
	width: 100%; max-width: 420px; text-align: center;
	background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 12px; padding: 32px 28px;
}
.dma-discord-login-card-a3655c67 h2 { margin: 0 0 8px; font-size: 19px; color: var(--dma-heading) !important; }
.dma-discord-login-card-a3655c67 p { margin: 0 0 22px; font-size: 13px; color: var(--dma-text-muted) !important; line-height: 1.5; }
.dma-discord-btn-a3655c67 {
	display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%;
	background: #5865F2; color: #ffffff !important; font-size: 14px; font-weight: 700;
	padding: 13px 20px; border-radius: 8px; text-decoration: none !important; transition: background .15s ease;
}
.dma-discord-btn-a3655c67:hover { background: #4752c4; }
.dma-discord-btn-a3655c67 svg { flex-shrink: 0; }
.dma-discord-login-note-a3655c67 { margin: 18px 0 0 !important; font-size: 11px !important; color: var(--dma-text-muted) !important; opacity: .8; }
.dma-discord-login-error-a3655c67 {
	width: 100%; max-width: 420px; background: rgba(239,82,78,.1); border: 1px solid rgba(239,82,78,.3);
	color: #ef524e; border-radius: 8px; padding: 12px 16px; font-size: 13px; text-align: center;
}

/* ---- Order claiming + reward codes (inc/discord-claim.php, dashboard.php, form-login.php) ---- */
.dma-account-discord-claim-a3655c67,
.dma-account-rewards-a3655c67 {
	background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 10px;
	padding: 18px 22px; margin-bottom: 28px;
}
.dma-account-discord-claim-a3655c67 h3,
.dma-account-rewards-a3655c67 h3 { font-size: 14px; font-weight: 700; color: var(--dma-heading) !important; margin: 0 0 6px; }
.dma-account-discord-claim-a3655c67 p,
.dma-account-rewards-a3655c67 p { font-size: 12px; color: var(--dma-text-muted) !important; margin: 0 0 14px; line-height: 1.5; }
.dma-account-discord-status-a3655c67 { color: var(--dma-text) !important; padding-bottom: 12px; margin-bottom: 14px !important; border-bottom: 1px solid var(--dma-border); }
.dma-account-discord-status-a3655c67 strong { color: #8b93ff; }
.dma-account-claim-form-a3655c67 { display: flex; flex-wrap: wrap; gap: 10px; }
.dma-account-claim-form-a3655c67 input {
	flex: 1 1 180px; min-width: 0; background: var(--dma-bg); border: 1px solid var(--dma-border); border-radius: 6px;
	padding: 10px 12px; color: var(--dma-heading); font-size: 13px; font-family: var(--dma-font);
}
.dma-account-claim-form-a3655c67 input:focus { outline: none; border-color: var(--dma-accent); }
.dma-account-claim-form-a3655c67 button { flex: 0 0 auto; }
.dma-account-rewards-list-a3655c67 { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.dma-account-rewards-list-a3655c67 li {
	display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
	background: var(--dma-bg); border: 1px dashed var(--dma-border); border-radius: 8px; padding: 10px 14px;
}
.dma-account-rewards-list-a3655c67 code { font-size: 14px; font-weight: 800; letter-spacing: .06em; color: var(--dma-heading); background: none; user-select: all; }
.dma-account-rewards-list-a3655c67 span { font-size: 12px; color: var(--dma-text-muted); }

.dma-discord-claim-card-a3655c67 {
	width: 100%; max-width: 420px;
	background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 12px; padding: 24px 28px;
}
.dma-discord-claim-card-a3655c67 h3 { margin: 0 0 6px; font-size: 15px; color: var(--dma-heading) !important; }
.dma-discord-claim-card-a3655c67 p { margin: 0 0 16px; font-size: 12px; color: var(--dma-text-muted) !important; line-height: 1.5; }
.dma-discord-claim-field-a3655c67 { display: flex; flex-direction: column; gap: 6px; margin-bottom: 12px; }
.dma-discord-claim-field-a3655c67 label { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--dma-text-muted); }
.dma-discord-claim-field-a3655c67 input {
	background: var(--dma-bg); border: 1px solid var(--dma-border); border-radius: 6px; padding: 10px 12px;
	color: var(--dma-heading); font-size: 14px; font-family: var(--dma-font);
}
.dma-discord-claim-field-a3655c67 input:focus { outline: none; border-color: #5865F2; }
.dma-discord-claim-submit-a3655c67 {
	width: 100%; margin-top: 4px; background: transparent; color: #8b93ff; border: 1px solid #5865F2; border-radius: 8px;
	padding: 11px 16px; font-size: 13px; font-weight: 700; cursor: pointer; transition: background .15s ease, color .15s ease;
}
.dma-discord-claim-submit-a3655c67:hover { background: #5865F2; color: #fff; }

/* ---- Compact dashboard (0.40.10): fits a laptop screen without scrolling ---- */
.woocommerce-account main.dma-container { padding-top: 22px !important; padding-bottom: 48px !important; }
.woocommerce-account main.dma-container > article > h1 { font-size: 28px; margin: 0 0 18px; }
/* WooCommerce's clearfix and the empty notices box were flex items with a
   gap after them, pushing the sidebar right of the page title. */
.woocommerce-account .woocommerce::before,
.woocommerce-account .woocommerce::after,
.woocommerce-account .woocommerce-notices-wrapper:empty { display: none !important; }
.woocommerce-account .woocommerce-notices-wrapper { flex: 1 1 100%; }
.dma-account-nav-a3655c67 { padding: 16px 0; }
.dma-account-nav-head-a3655c67 { padding-bottom: 14px; margin-bottom: 6px; }
.dma-account-nav-a3655c67 li a { padding: 9px 20px; }
.dma-account-welcome-a3655c67 p { margin-bottom: 20px; }
/* Welcome as a card, so the right column starts with a card at the same
   height as the sidebar card. */
.dma-account-welcome-a3655c67 {
	display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 6px 16px;
	padding: 18px 22px; margin-bottom: 16px;
	background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 12px;
}
.dma-account-welcome-a3655c67 h2 { margin: 0; font-size: 20px; }
.dma-account-welcome-a3655c67 p { margin: 0 !important; }
.dma-account-latest-order-a3655c67 { margin-bottom: 16px; }
.dma-account-dash-a3655c67 > * + * { margin-top: 0; }
.dma-account-dash-a3655c67 > div { margin-bottom: 16px; }
.dma-account-dash-a3655c67 > div:last-child { margin-bottom: 0; }

/* ==========================================================================
   Account QA fixes (0.40.11)
   ========================================================================== */
/* WooCommerce clearfix ::before/::after became grid items: the first one took
   the left cell, pushing Billing/Shipping right (order view, Addresses). */
.woocommerce-account .woocommerce-columns::before, .woocommerce-account .woocommerce-columns::after,
.woocommerce-account .u-columns::before, .woocommerce-account .u-columns::after,
.woocommerce-account .woocommerce-Addresses::before, .woocommerce-account .woocommerce-Addresses::after,
.woocommerce-account .col2-set::before, .woocommerce-account .col2-set::after { display: none !important; content: none !important; }
.woocommerce-account .woocommerce-columns, .woocommerce-account .woocommerce-Addresses { grid-template-columns: 1fr 1fr !important; gap: 16px !important; }
@media (max-width: 700px) { .woocommerce-account .woocommerce-columns, .woocommerce-account .woocommerce-Addresses { grid-template-columns: 1fr !important; } }
.woocommerce-account .woocommerce-column, .woocommerce-account .woocommerce-Address { width: auto !important; float: none !important; margin: 0 !important; }

/* Buttons in the account follow the site's button system (account.css
   loads after skin.css, so these restate it with a stronger selector). */
.woocommerce-account .woocommerce-MyAccount-content .button,
.woocommerce-account .woocommerce-MyAccount-content a.button,
.woocommerce-account .woocommerce-MyAccount-content button.button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-button {
	display: inline-flex !important; align-items: center; justify-content: center; gap: 8px;
	min-height: 36px; padding: 0 14px !important; margin: 0 !important;
	background: transparent !important; color: var(--dma-heading) !important; border: 1px solid var(--dma-border-hover) !important;
	border-radius: var(--dma-radius-btn, 10px) !important; font-size: 13px !important; font-weight: 600 !important;
	text-transform: none !important; letter-spacing: 0 !important; line-height: 1.2 !important; white-space: nowrap;
}
.woocommerce-account .woocommerce-MyAccount-content .button:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-button:hover {
	background: var(--dma-accent-dim) !important; border-color: var(--dma-accent) !important; color: var(--dma-heading) !important;
}
/* Form submits (Save changes, Save address) are the page's primary action */
.woocommerce-account .woocommerce-MyAccount-content form button[type="submit"].button,
.woocommerce-account .woocommerce-MyAccount-content form button[name="save_account_details"],
.woocommerce-account .woocommerce-MyAccount-content form button[name="save_address"] {
	min-height: 44px; padding: 0 20px !important; font-size: 14px !important;
	background: var(--dma-accent) !important; border-color: var(--dma-accent) !important; color: #fff !important;
}
.woocommerce-account .woocommerce-MyAccount-content form button[type="submit"].button:hover { background: #e0433f !important; border-color: #e0433f !important; color: #fff !important; outline: 2px solid var(--dma-accent); outline-offset: 2px; }
/* Notice with a button: text left, button right, vertically centred */
.woocommerce-account .woocommerce-info, .woocommerce-account .woocommerce-message {
	display: flex !important; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
}
.woocommerce-account .woocommerce-info .button, .woocommerce-account .woocommerce-message .button { order: 2; margin-left: auto !important; }

/* Order view */
.woocommerce-account .woocommerce-order-details h2,
.woocommerce-account .woocommerce-customer-details h2,
.woocommerce-account .woocommerce-order-downloads h2,
.woocommerce-account .woocommerce-column__title { text-transform: none !important; letter-spacing: 0 !important; font-size: 16px !important; margin: 0 0 14px !important; }
.woocommerce-account table.shop_table tfoot th,
.woocommerce-account table.shop_table tfoot td,
.woocommerce-account table.custom-fields th,
.woocommerce-account table.custom-fields td {
	padding: 12px 16px !important; font-size: 13px !important; font-weight: 500 !important; line-height: 1.5 !important;
	color: var(--dma-text) !important; border-top: 1px solid var(--dma-border) !important; text-align: left !important; background: transparent !important;
}
.woocommerce-account table.shop_table tfoot th, .woocommerce-account table.custom-fields th { color: var(--dma-text-muted) !important; font-weight: 600 !important; width: 60%; }
.woocommerce-account table.shop_table tfoot tr:last-child th, .woocommerce-account table.shop_table tfoot tr:last-child td { color: var(--dma-heading) !important; font-size: 15px !important; font-weight: 700 !important; }
.woocommerce-account table.custom-fields { margin-top: 12px !important; }
.woocommerce-account .wc-item-meta { margin: 6px 0 0 !important; padding: 0 !important; list-style: none; font-size: 12px; color: var(--dma-text-muted); }
.woocommerce-account .wc-item-meta li { margin: 0 !important; }
.woocommerce-account .wc-item-meta li strong { font-weight: 600; text-transform: capitalize; }
.woocommerce-account .wc-item-meta p { display: inline; margin: 0; }
.woocommerce-account .woocommerce-customer-details address {
	margin: 0 !important; padding: 14px 16px !important; border: 1px solid var(--dma-border) !important; border-radius: 10px !important; background: var(--dma-bg) !important;
}
.woocommerce-account .woocommerce-customer-details address p { margin: 8px 0 0 !important; display: flex; align-items: center; gap: 8px; }

/* Addresses page: title + "Edit" on one line */
.woocommerce-account .woocommerce-Address-title { display: flex !important; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.woocommerce-account .woocommerce-Address-title::before, .woocommerce-account .woocommerce-Address-title::after { display: none !important; }
.woocommerce-account .woocommerce-Address-title h2 { font-size: 15px !important; margin: 0 !important; }
.woocommerce-account .woocommerce-Address-title .edit { float: none !important; font-size: 13px; font-weight: 600; color: var(--dma-accent) !important; text-decoration: none !important; white-space: nowrap; }
.woocommerce-account .woocommerce-Address-title .edit:hover { text-decoration: underline !important; text-underline-offset: 3px; }
.woocommerce-account .woocommerce-Address address { margin: 0 !important; }
.woocommerce-account .woocommerce-MyAccount-content > p:first-child { margin: 0 0 14px; font-size: 13px; color: var(--dma-text-muted); }

/* Edit account / edit address: one card with plain rows (each row was being
   drawn as its own card by the login-form rule) */
.woocommerce-account .woocommerce-EditAccountForm,
.woocommerce-account .woocommerce-MyAccount-content form .woocommerce-address-fields {
	background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 12px; padding: 22px 24px;
}
.woocommerce-account .woocommerce-EditAccountForm { display: grid; grid-template-columns: 1fr 1fr; column-gap: 16px; }
.woocommerce-account .woocommerce-EditAccountForm > * { grid-column: 1 / -1; }
.woocommerce-account .woocommerce-EditAccountForm > .form-row-first { grid-column: 1; }
.woocommerce-account .woocommerce-EditAccountForm > .form-row-last { grid-column: 2; }
.woocommerce-account .woocommerce-EditAccountForm > .clear { display: none; }
@media (max-width: 600px) { .woocommerce-account .woocommerce-EditAccountForm { grid-template-columns: 1fr; } .woocommerce-account .woocommerce-EditAccountForm > .form-row-last { grid-column: 1; } }
.woocommerce-account .woocommerce-EditAccountForm .woocommerce-form-row,
.woocommerce-account .woocommerce-address-fields .woocommerce-form-row,
.woocommerce-account .woocommerce-address-fields .form-row {
	background: none !important; border: 0 !important; border-radius: 0 !important; padding: 0 !important; max-width: none !important;
	width: auto !important; float: none !important; margin: 0 0 14px !important;
}
.woocommerce-account .woocommerce-EditAccountForm .form-row em,
.woocommerce-account .woocommerce-EditAccountForm #account_display_name_description { display: block; margin-top: 6px; font-size: 12px; font-style: normal; color: var(--dma-text-muted); }
.woocommerce-account .woocommerce-EditAccountForm fieldset { margin: 6px 0 16px !important; padding: 16px 18px 4px !important; }
.woocommerce-account .woocommerce-EditAccountForm fieldset legend { font-size: 14px !important; }
.woocommerce-account .woocommerce-EditAccountForm > p:last-of-type { margin: 4px 0 0 !important; }
.woocommerce-account form label { text-transform: none !important; letter-spacing: 0 !important; font-size: 12.5px !important; }
.woocommerce-account .woocommerce-address-fields__field-wrapper { display: grid; grid-template-columns: 1fr 1fr; column-gap: 16px; }
.woocommerce-account .woocommerce-address-fields__field-wrapper > .form-row-wide,
.woocommerce-account .woocommerce-address-fields__field-wrapper > #billing_address_1_field,
.woocommerce-account .woocommerce-address-fields__field-wrapper > #billing_address_2_field,
.woocommerce-account .woocommerce-address-fields__field-wrapper > #shipping_address_1_field,
.woocommerce-account .woocommerce-address-fields__field-wrapper > #shipping_address_2_field { grid-column: 1 / -1; }
@media (max-width: 600px) { .woocommerce-account .woocommerce-address-fields__field-wrapper { grid-template-columns: 1fr; } }

/* Returns: the form is one full-width card with its title inside */
.dma-rma-form-a3655c67 { max-width: none !important; border-radius: 12px; }
.dma-rma-form-title { margin: 0 0 2px; font-size: 16px; font-weight: 700; color: var(--dma-heading); }
.dma-rma-form-row-a3655c67 label { text-transform: none; letter-spacing: 0; font-size: 12.5px; }
.dma-rma-form-row-a3655c67 select, .dma-rma-form-row-a3655c67 textarea, .dma-rma-form-row-a3655c67 input[type="file"] { border-radius: 8px; }
.dma-rma-section-title-a3655c67 { font-size: 16px; }
/* File picker button styled like a small secondary button */
.woocommerce-account input[type="file"]::file-selector-button {
	margin-right: 12px; padding: 7px 12px; cursor: pointer;
	font: 600 13px/1.2 var(--dma-font); color: var(--dma-heading);
	background: transparent; border: 1px solid var(--dma-border-hover); border-radius: 8px;
}
.woocommerce-account input[type="file"]::file-selector-button:hover { border-color: var(--dma-accent); background: var(--dma-accent-dim); }

/* Downloads: product name links plain, file button secondary */
.woocommerce-account .woocommerce-MyAccount-downloads table a.woocommerce-MyAccount-downloads-file,
.woocommerce-account .woocommerce-order-downloads table a.woocommerce-MyAccount-downloads-file { color: var(--dma-heading) !important; }
/* Addresses: the intro line goes under the cards, so the cards start level
   with the sidebar like on every other account page */
.woocommerce-account .woocommerce-MyAccount-content:has(> .woocommerce-Addresses) { display: flex; flex-direction: column; }
.woocommerce-account .woocommerce-MyAccount-content:has(> .woocommerce-Addresses) > p { order: 2; margin: 12px 0 0 !important; font-size: 12.5px; color: var(--dma-text-muted); }
/* Edit address: the whole form is the card, with its title inside */
.woocommerce-account .woocommerce-MyAccount-content form:has(> .woocommerce-address-fields) {
	background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 12px; padding: 22px 24px;
}
.woocommerce-account .woocommerce-MyAccount-content form:has(> .woocommerce-address-fields) > h3 { margin: 0 0 16px; font-size: 16px; font-weight: 700; color: var(--dma-heading); }
.woocommerce-account .woocommerce-MyAccount-content form .woocommerce-address-fields { background: none !important; border: 0 !important; padding: 0 !important; border-radius: 0 !important; }
/* Country / state pickers (selectWoo) in the dark style */
.woocommerce-account .select2-container--default .select2-selection--single {
	height: 42px; background: var(--dma-bg) !important; border: 1px solid var(--dma-border) !important; border-radius: 8px !important;
}
.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 40px; padding-left: 14px; color: var(--dma-heading) !important; font-size: 13px; }
.woocommerce-account .select2-container--default .select2-selection--single .select2-selection__arrow { height: 40px; right: 8px; }
.woocommerce-account .select2-container--default.select2-container--open .select2-selection--single { border-color: var(--dma-accent) !important; }
.woocommerce-account .select2-dropdown { background: var(--dma-surface) !important; border: 1px solid var(--dma-border) !important; color: var(--dma-text); }
.woocommerce-account .select2-search--dropdown .select2-search__field { background: var(--dma-bg) !important; border: 1px solid var(--dma-border) !important; color: var(--dma-heading) !important; border-radius: 6px; }
.woocommerce-account .select2-results__option { font-size: 13px; }
.woocommerce-account .select2-container--default .select2-results__option--highlighted[aria-selected],
.woocommerce-account .select2-container--default .select2-results__option--highlighted[data-selected] { background: var(--dma-accent) !important; color: #fff !important; }
.woocommerce-account .select2-container--default .select2-results__option[aria-selected="true"] { background: var(--dma-accent-dim); }

/* Single-page dashboard: soft fade while a tab loads */
.woocommerce-MyAccount-content { transition: opacity .15s ease; }
.woocommerce-MyAccount-content.is-loading { opacity: .45; pointer-events: none; }
.woocommerce-account article > h1:focus { outline: none; }
/* Edit address title (WooCommerce prints an h2 or h3 depending on version) */
.woocommerce-account .woocommerce-MyAccount-content form:has(> .woocommerce-address-fields) > :is(h2, h3) { margin: 0 0 16px !important; font-size: 16px !important; font-weight: 700; color: var(--dma-heading); }

/* Track an order (account tab, inc/account-tracking.php) */
.dma-acc-track { display: flex; flex-direction: column; gap: 16px; }
.dma-acc-track-orders { display: flex; flex-direction: column; background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 12px; overflow: hidden; }
.dma-acc-track-order { display: grid; grid-template-columns: 90px 1fr auto; align-items: center; gap: 12px; padding: 12px 18px; text-decoration: none !important; border-top: 1px solid var(--dma-border); color: var(--dma-text) !important; font-size: 13px; transition: background .15s ease; }
.dma-acc-track-order:first-child { border-top: 0; }
.dma-acc-track-order:hover { background: var(--dma-hover-tint); }
.dma-acc-track-order.is-active { background: var(--dma-accent-dim); box-shadow: inset 2px 0 0 var(--dma-accent); }
.dma-acc-track-num { font-weight: 700; color: var(--dma-heading); }
.dma-acc-track-date { color: var(--dma-text-muted); }
.dma-acc-track .dma-track-result-a3655c67 { margin-top: 0; padding: 22px 24px; }
.dma-acc-track .dma-track-date-a3655c67 { margin-bottom: 18px; }
.dma-acc-track .dma-track-timeline-a3655c67 { margin-bottom: 20px; }
.dma-acc-track .dma-track-items-a3655c67 h3 { text-transform: none; letter-spacing: 0; font-size: 14px; }
.dma-acc-track .dma-track-error-a3655c67 { margin-top: 0; }
.dma-acc-track-other { background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 12px; }
.dma-acc-track-other > summary { cursor: pointer; list-style: none; padding: 14px 18px; font-size: 13px; font-weight: 600; color: var(--dma-heading); }
.dma-acc-track-other > summary::-webkit-details-marker { display: none; }
.dma-acc-track-other > summary::after { content: '+'; float: right; color: var(--dma-text-muted); font-weight: 700; }
.dma-acc-track-other[open] > summary::after { content: '\2212'; }
.dma-acc-track-form { display: flex; flex-wrap: wrap; gap: 10px; padding: 0 18px 18px; }
.dma-acc-track-form input { flex: 1 1 180px; min-height: 44px; padding: 0 14px; background: var(--dma-bg); border: 1px solid var(--dma-border); border-radius: 8px; color: var(--dma-heading); font: inherit; font-size: 13px; }
.dma-acc-track-form input:focus { outline: none; border-color: var(--dma-accent); }
@media (max-width: 520px) { .dma-acc-track-order { grid-template-columns: 1fr auto; } .dma-acc-track-date { display: none; } }

/* Firmware renewal (account tab, inc/fw-renewal.php) */
.dma-fwr { display: flex; flex-direction: column; gap: 16px; }
.dma-fwr-intro { display: flex; align-items: center; gap: 14px; padding: 16px 18px; background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 12px; }
.dma-fwr-intro p { margin: 0; color: var(--dma-text); font-size: 14px; line-height: 1.55; }
.dma-fwr-badge { flex: 0 0 auto; padding: 6px 10px; border-radius: 8px; background: var(--dma-accent-dim); color: var(--dma-accent); font-size: 13px; font-weight: 800; white-space: nowrap; }
.dma-fwr-msg { padding: 12px 16px; border-radius: 10px; font-size: 13.5px; line-height: 1.5; border: 1px solid var(--dma-border); background: var(--dma-surface); color: var(--dma-text); }
.dma-fwr-msg.is-ok { border-color: rgba(52, 199, 89, .45); box-shadow: inset 3px 0 0 #34c759; }
.dma-fwr-msg.is-error { border-color: var(--dma-accent); box-shadow: inset 3px 0 0 var(--dma-accent); }
.dma-fwr-codes { display: flex; flex-direction: column; gap: 10px; }
.dma-fwr-code { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; padding: 16px 18px; background: var(--dma-surface); border: 1px dashed var(--dma-accent); border-radius: 12px; }
.dma-fwr-code > div { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.dma-fwr-code-label { color: var(--dma-text-muted); font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.dma-fwr-code-value { color: var(--dma-heading); font-size: 20px; font-weight: 800; letter-spacing: .04em; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.dma-fwr-code-meta { color: var(--dma-text-muted); font-size: 12.5px; overflow-wrap: anywhere; }
.dma-fwr-empty, .dma-fwr-form { display: flex; flex-direction: column; gap: 12px; padding: 20px 22px; background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 12px; }
.dma-fwr-empty p { margin: 0; color: var(--dma-text); font-size: 14px; }
.dma-fwr-empty .dma-button, .dma-fwr-form > .dma-button { align-self: flex-start; }
.dma-fwr-label { padding: 0; margin: 0 0 2px; color: var(--dma-heading); font-size: 13px; font-weight: 700; }
.dma-fwr-form input[type="text"], .dma-fwr-card-order { width: 100%; min-height: 44px; padding: 0 14px; background: var(--dma-bg); border: 1px solid var(--dma-border); border-radius: 8px; color: var(--dma-heading); font: inherit; font-size: 14px; box-sizing: border-box; }
.dma-fwr-form input[type="text"] { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .03em; }
.dma-fwr-form input[type="text"]:focus, .dma-fwr-card-order:focus { outline: none; border-color: var(--dma-accent); }
.dma-fwr-basis { display: flex; flex-direction: column; gap: 8px; margin: 4px 0 0; padding: 0; border: 0; min-width: 0; }
.dma-fwr-option { display: flex; align-items: flex-start; gap: 10px; padding: 12px 14px; border: 1px solid var(--dma-border); border-radius: 10px; cursor: pointer; transition: border-color .15s ease, background .15s ease; }
.dma-fwr-option:has(input:checked) { border-color: var(--dma-accent); background: var(--dma-accent-dim); }
.dma-fwr-option input { margin: 3px 0 0; accent-color: var(--dma-accent); }
.dma-fwr-option span { display: flex; flex-direction: column; gap: 2px; color: var(--dma-text-muted); font-size: 12.5px; line-height: 1.45; }
.dma-fwr-option strong { color: var(--dma-heading); font-size: 13.5px; font-weight: 600; }
.dma-fwr-new { display: none; flex-direction: column; gap: 8px; padding-left: 26px; }
.dma-fwr-basis:has(input[value="new_card"]:checked) .dma-fwr-new { display: flex; }
.dma-fwr-new input[type="text"] { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .03em; }
.dma-fwr-option strong.dma-fwr-dna { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .04em; overflow-wrap: anywhere; }
.dma-fwr .dma-drop { margin: 0; }
@media (max-width: 520px) { .dma-fwr-intro { flex-direction: column; align-items: flex-start; } .dma-fwr-code .dma-button { width: 100%; justify-content: center; } }
.dma-fwr-cards { display: flex; flex-direction: column; gap: 8px; padding: 18px 20px; background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 12px; }
.dma-fwr-card { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding: 10px 12px; border: 1px solid var(--dma-border); border-radius: 8px; background: var(--dma-bg); }
.dma-fwr-card .dma-fwr-dna { color: var(--dma-heading); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 13.5px; letter-spacing: .04em; overflow-wrap: anywhere; }
.dma-fwr-card span { color: var(--dma-text-muted); font-size: 12.5px; }
.dma-fwr-steps { margin: 8px 0 14px; padding-left: 20px; }
.dma-fwr-steps li { margin: 4px 0; }
.dma-fwr-request { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 0 0 10px; padding: 10px 12px; border: 1px solid var(--dma-border); border-radius: 8px; font-size: 13px; }
.dma-fwr-request strong { color: var(--dma-heading); }
.dma-fwr-request.is-approved strong { color: #34c759; }
.dma-fwr-request.is-denied strong { color: var(--dma-accent); }
.dma-fwr-request em { flex-basis: 100%; color: var(--dma-text-muted); font-size: 12.5px; }
.dma-fwr-request .dma-button { margin-left: auto; }
.dma-fwr-old-form { display: flex; flex-direction: column; gap: 10px; }
.dma-fwr-old-form .dma-fwr-card-order { display: block; }
.dma-fwr-old-form input[type="text"], .dma-fwr-old-form textarea { width: 100%; min-height: 44px; padding: 10px 14px; background: var(--dma-bg); border: 1px solid var(--dma-border); border-radius: 8px; color: var(--dma-heading); font: inherit; font-size: 14px; box-sizing: border-box; }
.dma-fwr-old-form input[type="text"]:focus, .dma-fwr-old-form textarea:focus { outline: none; border-color: var(--dma-accent); }
.dma-fwr-old-form .dma-fwr-old-number { display: none; }
.dma-fwr-old-form:has(option[value="other"]:checked) .dma-fwr-old-number { display: block; }
.dma-fwr-old-form .dma-button { align-self: flex-start; }
/* Firmware warranty (inc/fw-warranty.php) */
.dma-fww-order { display: flex; flex-direction: column; gap: 10px; margin: 12px 0 0; padding: 14px; border: 1px solid var(--dma-border); border-radius: 10px; background: var(--dma-bg); }
.dma-fww-order-head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 12px; }
.dma-fww-order-head strong { color: var(--dma-heading); }
.dma-fww-order-head span { color: var(--dma-text); font-size: 13.5px; }
.dma-fww-order-head em { margin-left: auto; color: var(--dma-text-muted); font-size: 12.5px; font-style: normal; }
.dma-fww-form { display: flex; flex-direction: column; gap: 10px; }
.dma-fww-form textarea { width: 100%; min-height: 44px; padding: 10px 14px; background: var(--dma-surface); border: 1px solid var(--dma-border); border-radius: 8px; color: var(--dma-heading); font: inherit; font-size: 14px; box-sizing: border-box; }
.dma-fww-form textarea:focus { outline: none; border-color: var(--dma-accent); }
.dma-fww-form .dma-button, .dma-fww-order > .dma-button { align-self: flex-start; }
.dma-fwr > .dma-drop .dma-fwr-msg { margin-bottom: 10px; }
/* Logged-out account page on small phones: the login and claim cards never
   get wider than the screen (they sat in a flex row at their content width). */
.woocommerce > .dma-discord-login-a3655c67 { width: 100%; min-width: 0; flex: 1 1 100%; box-sizing: border-box; }
.dma-discord-login-card-a3655c67, .dma-discord-claim-card-a3655c67 { box-sizing: border-box; max-width: min(420px, 100%); }
@media (max-width: 420px) { .dma-discord-login-card-a3655c67, .dma-discord-claim-card-a3655c67 { padding: 24px 18px; } }
