/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/
/* SEO description block below product grid */

.rg-category-seo-description {
    margin-top: 3em;
    padding: 2em 1.5em;
    border-top: 1px solid rgba(255,255,255,0.08);
    color: rgba(255,255,255,0.75);
    font-size: 0.95em;
    line-height: 1.7;
}
.rg-category-seo-description h2 {
    color: #fff;
    font-size: 1.4em;
    margin-bottom: 0.6em;
}
.rg-category-seo-description p {
    margin-bottom: 1em;
}

@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


}

/* Reassurance blocks (UI redesign Phase 2) */
.rg-reassurance { list-style: none; margin: 1em 0 0; padding: 0; font-size: .85em; line-height: 1.9; opacity: .92; }
.rg-reassurance li { margin: 0; }
.rg-reassurance--cart { text-align: center; margin-top: .75em; font-size: .8em; }
.rg-reassurance--checkout { margin-top: 1em; }

/* Simplified checkout (Phase 2): hide nav links + search, keep logo/account/cart */
.woocommerce-checkout .header-nav.nav-left,
.woocommerce-checkout .header-search { display: none !important; }

/* Discord banner: hidden during purchase funnel (Phase 2) */
.woocommerce-cart .rg-footer-discord,
.woocommerce-checkout .rg-footer-discord { display: none !important; }

/* Thank-you page survey (Phase 2) */
.rg-survey { margin: 1.5em 0; padding: 1.1em 1.25em; border: 1px solid var(--rg-line, rgba(242,240,234,.09)); border-radius: 12px; background: var(--rg-surf, #121828); font-family: 'Outfit', sans-serif; }
.rg-survey label { color: var(--rg-paper, #EDEFF5); font-weight: 500; display:block; margin-bottom: 8px; }
.rg-survey label span { opacity: .6; font-weight: normal; }
.rg-survey { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.rg-survey label { flex-basis:100%; margin:0 0 2px; }
.rg-survey input[type="text"] { flex:1 1 200px; max-width:360px; background: var(--rg-ink, #0A0D15); color: var(--rg-paper, #EDEFF5); border:1px solid var(--rg-line, rgba(242,240,234,.09)); border-radius:10px; padding:0 14px; height:44px; box-sizing:border-box; margin:0; }
.rg-survey input::placeholder { color: var(--rg-mut, #99A0B2); }
.rg-survey .button { background: linear-gradient(180deg, var(--rg-gold2,#F6C36B), var(--rg-gold,#E9A23B)) !important; color:#241502 !important; border:none !important; border-radius:10px !important; text-transform:none !important; margin:0 !important; height:44px; line-height:44px; padding:0 22px !important; box-sizing:border-box; }
.rg-survey-thanks { color: var(--rg-ok,#46D584); font-weight:500; }

/* Invoice button (PDF plugin) -> DA */
.woocommerce-order a.button.wpo_wcpdf, a.button.wpo_wcpdf, .wpo_wcpdf-actions a.button {
	background: linear-gradient(180deg, var(--rg-gold2,#F6C36B), var(--rg-gold,#E9A23B)) !important; color:#241502 !important;
	border: none !important; border-radius: 10px !important; text-transform: none !important;
	font-family: 'Outfit', sans-serif !important; box-shadow:none !important; height:44px; display:inline-flex; align-items:center; padding:0 22px !important;
}
.woocommerce-order a.button.wpo_wcpdf:hover, a.button.wpo_wcpdf:hover { filter:brightness(1.05); color:#241502 !important; }

/* Order details + billing/customer address: consistent font + alignment */
.woocommerce-order, .woocommerce-order *, .woocommerce-order-details, .woocommerce-customer-details,
.woocommerce-order address, .woocommerce-column__title, .woocommerce-order table.shop_table {
	font-family: 'Outfit', sans-serif !important;
}
.woocommerce-order address { font-style: normal; line-height: 1.7; color: var(--rg-paper,#EDEFF5); border:0; padding:0; }
.woocommerce-order .woocommerce-columns--addresses .woocommerce-column__title,
.woocommerce-order .woocommerce-order-details__title { font-family:'Unbounded',sans-serif !important; font-size:16px; margin-bottom:12px; }
.woocommerce-order table.shop_table th, .woocommerce-order table.shop_table td,
.woocommerce-order table.shop_table tfoot th, .woocommerce-order table.shop_table tfoot td,
.woocommerce-order td.product-name, .woocommerce-order .woocommerce-table__product-name {
	text-align: left !important; vertical-align: top; padding:10px 12px;
}
/* montants alignés à droite uniquement */
.woocommerce-order table.shop_table td.product-total,
.woocommerce-order table.shop_table th.product-total,
.woocommerce-order table.shop_table tfoot td .woocommerce-Price-amount { text-align: right !important; }
.woocommerce-order table.shop_table tfoot td { text-align: right !important; }

/* ============ Footer redesign (Phase 4) ============ */
#footer.footer-wrapper, .footer-widgets.footer-1, #footer .footer-widgets { background: #0d111b !important; padding: 44px 0 0 !important; }
#footer.footer-wrapper { border-top: 1px solid rgba(242,240,234,.08); }
.absolute-footer { display: none !important; }
.rg-foot { max-width: 1180px; margin: 0 auto; padding: 0 28px; font-family: 'Outfit', sans-serif; color: #EDEFF5; }
.rg-foot-discord {
	display: flex; align-items: center; gap: 22px;
	background: linear-gradient(120deg, rgba(88,101,242,.18), rgba(88,101,242,.06) 60%), #0A0D15;
	border: 1px solid rgba(88,101,242,.35); border-radius: 18px; padding: 26px 32px; margin: 8px 0 44px;
}
.rg-foot-dico { flex: none; width: 54px; height: 54px; border-radius: 16px; background: #5865F2; display: flex; align-items: center; justify-content: center; }
.rg-foot-dtxt { flex: 1; }
.rg-foot-dtxt b { display: block; font-family: 'Unbounded', sans-serif; font-weight: 700; font-size: 16px; color: #EDEFF5; margin-bottom: 4px; }
.rg-foot-dtxt span { font-size: 13px; color: #99A0B2; }
.rg-foot-djoin { flex: none; background: #5865F2; color: #fff !important; border-radius: 10px; padding: 12px 22px; font-weight: 600; font-size: 14px; transition: background .15s, transform .15s; }
.rg-foot-djoin:hover { background: #4752c4; transform: translateY(-1px); }
.rg-foot-cols { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr 1fr; gap: 30px; padding-bottom: 36px; }
.rg-foot-brand img { width: 110px; height: auto; margin-bottom: 14px; }
.rg-foot-brand p { font-size: 13px; color: #99A0B2; max-width: 260px; line-height: 1.7; }
.rg-foot-col h4 { font-family: 'Outfit', sans-serif; font-size: 11px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: #99A0B2; margin: 0 0 14px; }
.rg-foot-col .rg-footer-menu { list-style: none; margin: 0; padding: 0; }
.rg-foot-col .rg-footer-menu li { margin: 0 0 9px; }
.rg-foot-col .rg-footer-menu a { color: #EDEFF5; opacity: .72; font-size: 14px; transition: opacity .15s, color .15s; }
.rg-foot-col .rg-footer-menu a:hover { opacity: 1; color: #E9A23B; }
.rg-foot-bottom { position: relative; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 22px 0; font-size: 12.5px; color: #99A0B2; }
.rg-foot-bottom::before { content: ""; position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 100vw; border-top: 1px solid rgba(242,240,234,.08); }
.rg-foot-pay { display: flex; gap: 10px; align-items: center; }
.rg-pay { display: inline-flex; align-items: center; justify-content: center; height: 30px; min-width: 46px; padding: 0 9px; background: #0A0D15; border: 1px solid rgba(242,240,234,.1); border-radius: 7px; }
@media (max-width: 850px) {
	.rg-foot-cols { grid-template-columns: 1fr 1fr; gap: 26px; }
	.rg-foot-brand { grid-column: 1 / -1; }
	.rg-foot-discord { flex-direction: column; text-align: center; }
	.rg-foot-djoin { width: 100%; text-align: center; }
	.rg-foot-bottom { flex-direction: column; gap: 14px; text-align: center; }
}
@media (max-width: 480px) { .rg-foot-cols { grid-template-columns: 1fr; } }

/* Product status badges (Phase 3) */
.rg-status-badge { display: inline-block; padding: .25em .9em; border-radius: 99px; font-size: .78em; font-weight: 600; letter-spacing: .03em; border: 1px solid; }
.rg-status-badge.is-undetected { color: #6fdd8b; border-color: rgba(111,221,139,.4); background: rgba(111,221,139,.08); }
.rg-status-badge.is-updating { color: #ffd166; border-color: rgba(255,209,102,.4); background: rgba(255,209,102,.08); }
.rg-status-badge.is-detected { color: #ff6b6b; border-color: rgba(255,107,107,.4); background: rgba(255,107,107,.08); }
.rg-status-badge.is-risky { color: #ffa94d; border-color: rgba(255,169,77,.4); background: rgba(255,169,77,.08); }
.rg-status-table { width: 100%; table-layout: fixed; border-collapse: collapse; }
.rg-status-table th { text-align: left; }
.rg-status-table th:nth-child(1) { width: 50%; }
.rg-status-table th:nth-child(2) { width: 28%; }
.rg-status-table th:nth-child(3) { width: 22%; }
.rg-status-table td, .rg-status-table th { padding: .6em .8em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* Status page game groups + discontinued (Phase 3) */
.rg-status-badge.is-discontinued { color: #9aa0a6; border-color: rgba(154,160,166,.4); background: rgba(154,160,166,.08); }
.rg-status-game { margin: 1.6em 0 .5em; font-family: 'Unbounded', sans-serif; font-size: 18px; color: var(--rg-paper); }

/* Variation price buttons (Phase 3) */
.variations select[data-rg-buttons] { display: none !important; }
.rg-variation-buttons { display: flex; flex-wrap: wrap; gap: 8px; margin: .25em 0 .5em; }
.rg-var-btn { display: inline-flex; align-items: center; gap: 7px; padding: 6px 13px; border: 1px solid rgba(255,255,255,.22); border-radius: 7px; background: transparent; color: inherit; cursor: pointer; line-height: 1; transition: border-color .15s, background .15s; }
.rg-var-btn:hover { border-color: rgba(233,162,59,.7); }
.rg-var-btn.active { border-color: #E9A23B; background: rgba(233,162,59,.1); }
.rg-var-label { font-weight: 600; font-size: .82em; line-height: 1; }
.rg-var-price { font-size: .78em; opacity: .65; line-height: 1; }
.rg-var-btn.active .rg-var-price { opacity: .9; }
.rg-var-badge { background: rgba(233,162,59,.15); color: #E9A23B; font-size: .6em; font-weight: 700; padding: 1px 7px; border-radius: 99px; text-transform: uppercase; letter-spacing: .04em; align-self: center; }
.rg-var-badge--warn { background: rgba(233,162,59,.12); border: 1px solid rgba(233,162,59,.55); }

/* Upgrade confirmation gate */
.rg-upgrade-confirm { margin: 14px 0 4px; padding: 14px 16px; border: 1px solid rgba(233,162,59,.55); border-radius: 9px; background: rgba(233,162,59,.07); transition: box-shadow .2s, border-color .2s; }
.rg-upgrade-confirm .rg-upgrade-notice { margin: 0 0 10px; color: #F6C36B; font-size: .92em; line-height: 1.45; }
.rg-upgrade-confirm .rg-upgrade-ico { margin-right: 6px; }
.rg-upgrade-confirm .rg-upgrade-check { display: flex; align-items: flex-start; gap: 10px; margin: 0; cursor: pointer; font-weight: 700; line-height: 1.4; }
.rg-upgrade-confirm .rg-upgrade-check input { margin-top: 3px; flex: none; }
.rg-upgrade-confirm.rg-upgrade-error { border-color: #e05252; box-shadow: 0 0 0 3px rgba(224,82,82,.25); }

/* Account dashboard licenses (Phase 3) */
.rg-dashboard-licenses { margin-top: 1.5em; }
.rg-license-table { width: 100%; }
.rg-license-table td, .rg-license-table th { padding: .5em .7em; }
.rg-license-key { font-size: .85em; word-break: break-all; }
.rg-dashboard-links { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 1em; }
.rg-dashboard-links a { opacity: .85; }
.rg-dashboard-links a:hover { opacity: 1; }

/* Brand fonts (Phase 4) — variable, self-hosted */
@font-face {
	font-family: 'Unbounded';
	src: url('fonts/unbounded-var.woff2') format('woff2-variations');
	font-weight: 200 900;
	font-display: swap;
}
@font-face {
	font-family: 'Outfit';
	src: url('fonts/outfit-var.woff2') format('woff2-variations');
	font-weight: 100 900;
	font-display: swap;
}

/* ============ Global header restyle (Phase 4) ============ */
.header-wrapper, #masthead, .header-bg-color, .header-top { background-color: #0A0D15 !important; }
.header-main {
	background: #0A0D15 !important;
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	border-bottom: 1px solid rgba(242, 240, 234, .08);
}
.header.show-on-scroll .header-main, .stuck .header-main { background: #0A0D15 !important; }
#logo, #logo a { width: auto !important; max-width: none !important; }
#logo a { display: inline-flex !important; align-items: center; gap: 11px; }
#logo a img { order: 1; }
#logo a::after { order: 2; }
#logo img { border-radius: 10px; height: 46px; width: auto; }
#logo a::after {
	content: "Recovery";
	font-family: 'Unbounded', sans-serif;
	font-weight: 700;
	font-size: 15px;
	letter-spacing: .02em;
	color: #F2F0EA;
	white-space: nowrap;
}
#logo a::before {
	content: "Gods";
	order: 3;
	font-family: 'Unbounded', sans-serif;
	font-weight: 700;
	font-size: 15px;
	letter-spacing: .02em;
	color: #E9A23B;
	white-space: nowrap;
	margin-left: -7px;
}
.header-nav .nav-top-link, .header-nav > li > a { font-family: 'Outfit', sans-serif; font-weight: 500; }
.header-main .header-nav li > a { color: #99A0B2; }
.header-main .header-nav li > a:hover { color: #F2F0EA; }

/* Barre de recherche en pilule */
.header .searchform .flex-col:last-of-type { display: none; }
.header .searchform input.search-field,
.header .searchform input.search-field:focus {
	background: rgba(10,13,21,.55) !important;
	border: 1px solid rgba(242, 240, 234, .12) !important;
	border-radius: 10px !important;
	color: #F2F0EA !important;
	font-family: 'Outfit', sans-serif;
	font-size: 14px !important;
	box-shadow: none !important;
}
.header .searchform input.search-field::placeholder { color: #99A0B2 !important; }
.header .searchform .ux-search-box__input { color: #F2F0EA !important; }
/* loupe de recherche : or, pas vert */
.header .searchform button, .header .ux-search-box__submit { background: #E9A23B !important; color: #241502 !important; border-radius: 10px !important; }

/* Bouton Discord (pilule blurple + logo inline) */
.header-nav li.rg-discord-btn > a {
	background: #5865F2 !important;
	color: #fff !important;
	border-radius: 99px !important;
	padding: 0 16px !important;
	margin: 0 4px;
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	line-height: 2.3 !important;
	font-weight: 500;
	transition: background .15s ease, transform .15s ease;
}
.header-nav li.rg-discord-btn > a:hover { background: #4752c4 !important; transform: translateY(-1px); color: #fff !important; }
.header-nav li.rg-discord-btn .rg-dico { color: #fff; flex: none; }
.header-nav li.rg-discord-btn > a:hover .rg-dico { color: #fff; }

/* Docs button (Phase 5) — pill or contour, à gauche de Discord */
.header-nav li.rg-docs-btn > a {
	border: 1px solid rgba(233, 162, 59, .5) !important;
	color: #F6C36B !important;
	border-radius: 99px !important;
	padding: 0 15px !important;
	margin: 0 4px;
	display: inline-flex !important;
	align-items: center;
	gap: 7px;
	line-height: 2.2 !important;
	font-weight: 500;
	transition: background .15s ease, border-color .15s ease, transform .15s ease;
}
.header-nav li.rg-docs-btn > a:hover {
	background: rgba(233, 162, 59, .12) !important;
	border-color: #E9A23B !important;
	color: #F6C36B !important;
	transform: translateY(-1px);
}
.header-nav li.rg-docs-btn .rg-dico { flex: none; }

/* Sélecteur langue / devise */
.rg-locale { position: relative; }
.rg-locale summary {
	list-style: none;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	background: #10141F;
	border: 1px solid rgba(242, 240, 234, .09);
	border-radius: 10px;
	padding: 8px 13px;
	font-family: 'Outfit', sans-serif;
	font-size: 13px;
	color: #99A0B2;
	cursor: pointer;
	transition: border-color .2s;
}
.rg-locale summary::-webkit-details-marker { display: none; }
.rg-locale summary:hover { border-color: rgba(233, 162, 59, .35); }
.rg-locale-panel {
	position: absolute;
	right: 0;
	top: calc(100% + 10px);
	width: 270px;
	background: #151B2A;
	border: 1px solid rgba(242, 240, 234, .09);
	border-radius: 14px;
	padding: 16px;
	display: grid;
	gap: 14px;
	box-shadow: 0 24px 60px -20px rgba(0, 0, 0, .7);
	z-index: 99;
	text-align: left;
}
.rg-locale-panel h5 {
	font-family: 'Outfit', sans-serif;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: #99A0B2;
	margin: 0 0 8px;
}
.rg-lang { display: flex; justify-content: space-between; align-items: center; font-size: 13px; padding: 5px 8px; border-radius: 8px; color: #F2F0EA; }
.rg-lang.on { color: #E9A23B; font-weight: 500; }
.rg-lang.on b { color: #E9A23B; }
.rg-lang.soon { color: #99A0B2; }
.rg-lang.soon i { font-style: normal; font-size: 10.5px; border: 1px solid rgba(242, 240, 234, .12); border-radius: 99px; padding: 1px 8px; }
.rg-locale-panel .woocs_auto_switcher, .rg-locale-panel select {
	width: 100%;
	background: #10141F;
	color: #F2F0EA;
	border: 1px solid rgba(242, 240, 234, .12);
	border-radius: 8px;
	padding: 7px 10px;
	font-family: 'Outfit', sans-serif;
	font-size: 13px;
}

/* Currency list with real flags (Phase 4 — replaces the native <select>) */
.rg-cur-list { display: flex; flex-direction: column; gap: 2px; max-height: 208px; overflow-x: hidden; overflow-y: auto; }
.rg-cur {
	display: flex; align-items: center; gap: 9px; width: 100%;
	text-align: left; background: transparent; border: 0; cursor: pointer;
	font-family: 'Outfit', sans-serif; font-size: 13px; color: #EDEFF5;
	padding: 7px 8px; border-radius: 8px; transition: background .15s, color .15s;
}
.rg-cur:hover { background: rgba(233, 162, 59, .10); color: #F6C36B; }
.rg-cur.on { background: rgba(233, 162, 59, .12); color: #E9A23B; font-weight: 500; }
.rg-cur-flag { width: 22px; height: 15px; object-fit: cover; border-radius: 3px; flex: 0 0 auto; box-shadow: 0 0 0 1px rgba(0, 0, 0, .25); }
.rg-cur-flag--none { background: rgba(242, 240, 234, .08); }
.rg-cur-code { flex: 1; letter-spacing: .02em; }
.rg-cur-sym { color: #99A0B2; font-size: 12px; }
.rg-cur.on .rg-cur-sym { color: #F6C36B; }
.rg-cur-chk { color: #E9A23B; flex: 0 0 auto; }
.rg-cur-list::-webkit-scrollbar { width: 6px; height: 0; }
.rg-cur-list::-webkit-scrollbar-thumb { background: rgba(242, 240, 234, .14); border-radius: 99px; }
.rg-cur-list::-webkit-scrollbar-track { background: transparent; }
.rg-cur-list::-webkit-scrollbar-corner { background: transparent; }

/* Search field + live results (Phase 4) */
.header .searchform input.search-field,
.header-search-form input.search-field {
	background: rgba(10,13,21,.6) !important;
	border: 1px solid rgba(242,240,234,.12) !important;
	color: #F2F0EA !important;
	font-size: 14px !important;
}
.header .searchform input.search-field::placeholder { color: #99A0B2 !important; }
.live-search-results { background: transparent !important; border: 0 !important; box-shadow: none !important; }
.live-search-results .autocomplete-suggestions {
	background: rgba(12,16,26,.97) !important;
	backdrop-filter: blur(14px);
	border: 1px solid rgba(242,240,234,.1) !important;
	border-radius: 12px !important;
	box-shadow: 0 24px 60px -20px rgba(0,0,0,.75) !important;
	color: #F2F0EA;
	font-size: 14px;
	min-width: 340px;
}
.live-search-results .post-type-product,
.live-search-results li { border-color: rgba(242,240,234,.08) !important; }
.live-search-results a, .live-search-results .suggestion { color: #F2F0EA !important; font-size: 14px !important; }
.live-search-results a:hover, .live-search-results .suggestion:hover { background: rgba(233,162,59,.1) !important; }
.live-search-results .price, .live-search-results .amount { color: #E9A23B !important; }
.live-search-results img { border-radius: 8px; }


/* Locale selector — mobile in accordion (Phase 4) */
.rg-locale-mobile-wrap { padding: 16px 20px; border-top: 1px solid rgba(242,240,234,.08); }
.rg-locale--mobile { width: 100%; }
.rg-locale--mobile summary { width: 100%; justify-content: space-between; }
.rg-locale--mobile .rg-locale-panel { position: static; width: 100%; margin-top: 10px; box-shadow: none; }
/* éviter le doublon : le sélecteur du topbar (html element) est masqué sur mobile,
   l'accordéon prend le relais */
@media (max-width: 849px) {
	.header-main .rg-locale:not(.rg-locale--mobile) { display: none; }
}
/* le wordmark se cache sous un certain seuil pour laisser la place */
@media (max-width: 600px) {
	#logo a::after, #logo a::before { display: none; }
}


/* Search input text white — strong (Phase 4 fix) */
#header input.search-field,
#header input[type="search"],
.header input.search-field,
input.search-field[id^="woocommerce-product-search-field"] {
	color: #F2F0EA !important;
	-webkit-text-fill-color: #F2F0EA !important;
	background: rgba(10,13,21,.55) !important;
}
#header input.search-field::placeholder { color: #99A0B2 !important; -webkit-text-fill-color: #99A0B2 !important; }

/* Cart icon visible (gold glyph, not greyed) */
.header .cart-item .header-cart-link.button.circle { background: transparent !important; border: 0 !important; box-shadow: none !important; }
.header .cart-item .header-cart-link .cart-icon strong,
.header .cart-item .header-cart-link::before { color: #99A0B2 !important; }
.header .cart-item .header-cart-link:hover { color: #E9A23B !important; }


/* Live search results text — correct Flatsome classes (Phase 4 fix) */
.live-search-results .search-name,
.live-search-results .autocomplete-suggestion,
.live-search-results .autocomplete-suggestion * { color: #F2F0EA !important; }
.live-search-results .search-price, .live-search-results .search-price .amount { color: #E9A23B !important; }
.live-search-results .autocomplete-suggestion:hover { background: rgba(233,162,59,.1) !important; }
.live-search-results .autocomplete-group { color: #99A0B2 !important; }

/* Header: remove grey underline bar under search/currency/cart (Phase 4 fix) */
.header-main .nav-line-bottom > li > a::before,
.header-main .nav-line-bottom > li > a::after { display: none !important; }
.header .ux-search-box,
.header .searchform-wrapper,
.header .header-search-form,
.header .ux-search-box .search-form { border: 0 !important; box-shadow: none !important; }
.header .ux-search-box::after,
.header .header-search-form::after { display: none !important; }

/* Header right cluster: kill the stray grey line under search/currency/cart (Phase 4) */
.header .flex-right,
.header .flex-right .header-nav,
.header .nav-right,
.header .header-search-form,
.header .header-search-form-wrapper,
.header .searchform-wrapper,
.header .ux-search-box {
	box-shadow: none !important;
	border-bottom: 0 !important;
}
.header .flex-right .header-nav::before,
.header .flex-right .header-nav::after,
.header .nav-right::before,
.header .nav-right::after,
.header .ux-search-box::before,
.header .ux-search-box::after,
.header .searchform-wrapper::before,
.header .searchform-wrapper::after,
.header li.html.search-form::before,
.header li.html.search-form::after { display: none !important; content: none !important; }

/* Hide empty live-search container (stray grey line in header) — Phase 4 fix */
.header .live-search-results { border: 0 !important; box-shadow: none !important; background: transparent !important; }
.header .live-search-results .autocomplete-suggestions[style*="display: none"],
.header .live-search-results .autocomplete-suggestions:empty { display: none !important; border: 0 !important; box-shadow: none !important; }

/* Mascot pages: 404, empty cart, thank-you (Phase 4) */
.rg-mascot-page { text-align: center; max-width: 560px; margin: 60px auto; padding: 0 20px; font-family: 'Outfit', sans-serif; }
.rg-mascot-page img { height: auto; margin: 0 auto 24px; filter: drop-shadow(0 18px 50px rgba(0,0,0,.5)); }
.rg-mascot-page h1, .rg-mascot-page h2 { font-family: 'Unbounded', sans-serif; font-weight: 700; color: var(--color-text-primary, #EDEFF5); margin: 0 0 12px; }
.rg-mascot-page h1 { font-size: clamp(26px, 4vw, 38px); }
.rg-mascot-page h2 { font-size: clamp(22px, 3vw, 30px); }
.rg-mascot-page p { color: #99A0B2; font-size: 15px; line-height: 1.7; margin: 0 auto 26px; max-width: 420px; }
.rg-mascot-actions { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.rg-mp-btn { display: inline-flex; align-items: center; border-radius: 12px; padding: 13px 24px; font-weight: 600; font-size: 14.5px; transition: transform .15s, box-shadow .15s, border-color .15s; }
.rg-mp-btn.gold { background: linear-gradient(180deg, #F6C36B, #E9A23B); color: #241502 !important; }
.rg-mp-btn.gold:hover { transform: translateY(-2px); box-shadow: 0 10px 30px -10px rgba(233,162,59,.55); }
.rg-mp-btn.ghost { background: transparent; color: #EDEFF5 !important; border: 1px solid rgba(242,240,234,.18); }
.rg-mp-btn.ghost:hover { border-color: rgba(233,162,59,.5); transform: translateY(-2px); }

/* Thank-you page mascot banner */
.rg-thanks-hero { display: flex; align-items: center; gap: 24px; background: #121828; border: 1px solid rgba(233,162,59,.25); border-radius: 18px; padding: 24px 28px; margin: 0 0 28px; font-family: 'Outfit', sans-serif; }
.rg-thanks-hero img { height: auto; flex: none; filter: drop-shadow(0 10px 28px rgba(0,0,0,.5)); }
.rg-thanks-hero h2 { font-family: 'Unbounded', sans-serif; font-weight: 700; font-size: 22px; color: #EDEFF5; margin: 0 0 8px; }
.rg-thanks-hero p { color: #99A0B2; font-size: 14px; line-height: 1.7; margin: 0; }
.rg-thanks-hero a { color: #E9A23B; }
@media (max-width: 560px) { .rg-thanks-hero { flex-direction: column; text-align: center; } .rg-thanks-hero img { width: 130px; } }

/* Mini-cart empty state: RG-cart mascot (Phase 4) */
.ux-mini-cart-empty-icon { display: none !important; }
.woocommerce-mini-cart__empty-message { text-align: center; color: #99A0B2; font-family: 'Outfit', sans-serif; padding: 10px 0; }
.woocommerce-mini-cart__empty-message::before {
	content: "";
	display: block;
	width: 120px;
	height: 120px;
	margin: 4px auto 14px;
	background: url('/wp-content/uploads/rg-cart.webp') no-repeat center / contain;
}

/* Always-dark header: render a single logo (kill the mobile double-head) */
#logo img:not(.header-logo-dark) { display: none !important; }
#logo img.header-logo-dark { display: inline-block !important; }

/* ============ Cart drawer + cart/checkout pages (Phase 4) ============ */
:root { --rg-ink:#0A0D15; --rg-surf:#121828; --rg-line:rgba(242,240,234,.09); --rg-gold:#E9A23B; --rg-gold2:#F6C36B; --rg-mut:#99A0B2; --rg-paper:#EDEFF5; }

/* Off-canvas drawer shell */
.off-canvas-cart .mfp-content, #cart-popup .cart-popup-inner, .off-canvas-cart #cart-popup {
	background: var(--rg-ink) !important; color: var(--rg-paper); font-family: 'Outfit', sans-serif;
}
#cart-popup .widget_shopping_cart_content { color: var(--rg-paper); }
#cart-popup .cart-popup-title, #cart-popup .widgettitle { font-family: 'Unbounded', sans-serif; }
#cart-popup .mini_cart_item { border-color: var(--rg-line) !important; }
#cart-popup .mini_cart_item a:not(.remove) { color: var(--rg-paper) !important; }
#cart-popup .quantity .qty { background: var(--rg-surf); color: var(--rg-paper); border:1px solid var(--rg-line); border-radius:8px; }
#cart-popup .woocommerce-mini-cart__total { border-top:1px solid var(--rg-line); padding-top:12px; font-size:15px; }
#cart-popup .woocommerce-Price-amount { color: var(--rg-paper); }

/* Drawer buttons: Checkout primary, View cart secondary */
.woocommerce-mini-cart__buttons { display:flex; flex-direction:column; gap:10px; margin:14px 0 0; }
.button.rg-cart-checkout {
	background: linear-gradient(180deg, var(--rg-gold2), var(--rg-gold)) !important; color:#241502 !important;
	border:none !important; border-radius:12px !important; font-weight:600 !important; text-align:center;
	padding:14px !important; margin:0 !important; text-transform:none !important; letter-spacing:0 !important;
}
.button.rg-cart-checkout:hover { transform:translateY(-1px); box-shadow:0 10px 30px -12px rgba(233,162,59,.6); }
.button.rg-cart-view {
	background:transparent !important; color:var(--rg-paper) !important; border:1px solid var(--rg-line) !important;
	border-radius:12px !important; font-weight:500 !important; text-align:center; padding:12px !important;
	margin:0 !important; text-transform:none !important; letter-spacing:0 !important;
}
.button.rg-cart-view:hover { border-color:rgba(233,162,59,.5) !important; }
.rg-minicart-empty-actions { margin-top:16px; display:flex; }
.rg-minicart-empty-actions .button { flex:1; }

/* Discord payment notice */
.rg-discord-notice {
	display:flex; gap:10px; align-items:flex-start; margin:16px 0 0;
	background: rgba(88,101,242,.10); border:1px solid rgba(88,101,242,.35); border-radius:12px;
	padding:13px 15px; font-size:12.5px; line-height:1.6; color:var(--rg-mut); font-family:'Outfit',sans-serif;
}
.rg-discord-notice svg { color:#98A8F8; flex:none; margin-top:2px; }
.rg-discord-notice strong { color:var(--rg-paper); font-weight:600; }
.rg-discord-notice a { color:#98A8F8; font-weight:600; }

/* ---- Cart page modernization ---- */
.woocommerce-cart .cart_totals, .woocommerce-cart .woocommerce-cart-form table.cart {
	background: var(--rg-surf); border:1px solid var(--rg-line); border-radius:16px; padding:14px 18px;
}
.woocommerce-cart table.cart th, .woocommerce-cart table.cart td { border-color: var(--rg-line) !important; }
.woocommerce-cart .cart_totals h2 { font-family:'Unbounded',sans-serif; font-size:18px; }
.woocommerce-cart .product-name a { color:var(--rg-paper); font-weight:500; }
.woocommerce-cart .checkout-button, .woocommerce .wc-proceed-to-checkout a.checkout-button {
	background: linear-gradient(180deg, var(--rg-gold2), var(--rg-gold)) !important; color:#241502 !important;
	border-radius:12px !important; font-weight:600 !important; text-transform:none !important;
}
.woocommerce-cart .cart .quantity .qty { background:var(--rg-ink); color:var(--rg-paper); border:1px solid var(--rg-line); border-radius:8px; }

/* ---- Checkout page modernization ---- */
.woocommerce-checkout #customer_details .col-1, .woocommerce-checkout #customer_details .col-2,
.woocommerce-checkout #order_review, .woocommerce-checkout #order_review_heading {
	font-family:'Outfit',sans-serif;
}
.woocommerce-checkout form.checkout #order_review {
	background: var(--rg-surf); border:none; border-radius:16px; padding:18px 20px;
}
.woocommerce-checkout #order_review_heading { font-family:'Unbounded',sans-serif; font-size:18px; }
.woocommerce-checkout #payment { background: transparent !important; }
.woocommerce-checkout #payment ul.payment_methods { border:1px solid var(--rg-line); border-radius:12px; background:var(--rg-ink); }
.woocommerce-checkout #place_order, .woocommerce-checkout .button#place_order {
	background: linear-gradient(180deg, var(--rg-gold2), var(--rg-gold)) !important; color:#241502 !important;
	border-radius:12px !important; font-weight:600 !important; text-transform:none !important; width:100%; padding:15px !important;
}
.woocommerce-checkout .input-text, .woocommerce-checkout select, .woocommerce form .form-row input.input-text {
	background: var(--rg-ink) !important; color:var(--rg-paper) !important; border:1px solid var(--rg-line) !important; border-radius:10px !important;
}

/* ============ select2 / selectWoo (dropdown pays, état…) — DA sombre/or ============ */
/* Le panneau select2 est injecté dans <body> (hors .woocommerce-checkout) → sélecteurs
   globaux + safelistés RUCSS via le filtre rocket_rucss_safelist (functions.php), sinon
   WP Rocket élague ces classes absentes du DOM initial (dropdown non stylé au 1er open). */

/* La boîte fermée : même look que les input-text (sombre, radius 10, hauteur alignée) */
.select2-container--default .select2-selection--single {
	background: var(--rg-ink) !important; border: 1px solid var(--rg-line) !important;
	border-radius: 10px !important; height: 48px !important;
	display: flex !important; align-items: center !important; padding: 0 14px !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
	color: var(--rg-paper) !important; line-height: normal !important; padding: 0 !important;
}
.select2-container--default .select2-selection--single .select2-selection__placeholder { color: var(--rg-mut) !important; }
.select2-container--default .select2-selection--single .select2-selection__arrow { height: 100% !important; right: 12px !important; }
.select2-container--default .select2-selection--single .select2-selection__arrow b {
	border-color: var(--rg-mut) transparent transparent transparent !important;
}
.select2-container--default.select2-container--open .select2-selection--single { border-color: rgba(233,162,59,.5) !important; }
/* Largeur pleine dans les form-row Woo (select2 rétrécit sinon) */
.woocommerce form .form-row .select2-container,
.woocommerce-checkout .select2-container { width: 100% !important; }

/* Le panneau ouvert (injecté dans <body>) */
.select2-dropdown {
	background: var(--rg-surf) !important; border: 1px solid var(--rg-line) !important;
	border-radius: 10px !important; overflow: hidden; box-shadow: 0 12px 34px rgba(0,0,0,.45) !important;
}
.select2-search--dropdown { padding: 8px !important; }
.select2-container--default .select2-search--dropdown .select2-search__field {
	background: var(--rg-ink) !important; color: var(--rg-paper) !important;
	border: 1px solid var(--rg-line) !important; border-radius: 8px !important; padding: 8px 10px !important;
	font-size: 16px !important; /* ≥16px = évite le zoom auto d'iOS au focus */
}
.select2-container--default .select2-results__option {
	color: var(--rg-paper) !important; background: transparent !important; padding: 10px 14px !important;
}
/* Survol / clavier : or au lieu du bleu par défaut */
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted {
	background: rgba(233,162,59,.16) !important; color: var(--rg-gold) !important;
}
/* Option déjà sélectionnée */
.select2-container--default .select2-results__option[aria-selected="true"] {
	background: rgba(233,162,59,.10) !important; color: var(--rg-gold2) !important;
}
.select2-results__options { scrollbar-color: var(--rg-gold) var(--rg-surf); scrollbar-width: thin; }

/* Mobile (≤549px, breakpoint Flatsome) : confort tactile + pas de débordement viewport */
@media (max-width: 549px) {
	.select2-container--default .select2-selection--single { height: 50px !important; font-size: 16px !important; }
	.select2-container--default .select2-selection--single .select2-selection__rendered { font-size: 16px !important; }
	/* Cibles tactiles ~48px + texte 16px (lisible, pas de zoom) */
	.select2-container--default .select2-results__option { padding: 14px 16px !important; font-size: 16px !important; }
	/* Panneau borné à la hauteur de l'écran (liste des pays très longue) */
	.select2-dropdown { max-height: 60vh !important; }
	.select2-results > .select2-results__options { max-height: calc(60vh - 60px) !important; }
}

/* ============ Cart drawer bg + cart page buttons (Phase 4 fixes) ============ */
/* Off-canvas drawer: full dark background (kills white bottom) */
.off-canvas-cart, .off-canvas-cart .off-canvas-content, #cart-popup,
#cart-popup .cart-popup-inner, .mfp-content #cart-popup, .off-canvas-overlay + #cart-popup {
	background: var(--rg-ink) !important;
}
#cart-popup .cart-popup-inner { min-height: 100%; display: flex; flex-direction: column; }
#cart-popup .cart-popup-inner--sticky .woocommerce-mini-cart__buttons,
#cart-popup .cart-popup-inner--sticky .woocommerce-mini-cart__total { background: var(--rg-ink) !important; border-color: var(--rg-line) !important; }

/* Empty drawer/cart: single gold "Browse products" button + mascot */
.return-to-shop .button, .woocommerce .return-to-shop .button.wc-backward {
	background: linear-gradient(180deg, var(--rg-gold2), var(--rg-gold)) !important; color: #241502 !important;
	border: none !important; border-radius: 12px !important; font-weight: 600 !important; text-transform: none !important;
}

/* Cart page: continue shopping, update cart, coupon button -> DA */
.woocommerce-cart .cart .button[name="update_cart"],
.woocommerce-cart .cart .button.wc-backward,
.woocommerce-cart a.button.wc-backward,
.woocommerce-cart .coupon .button[name="apply_coupon"],
.woocommerce .actions .button {
	background: var(--rg-surf) !important; color: var(--rg-paper) !important;
	border: 1px solid var(--rg-line) !important; border-radius: 10px !important;
	font-weight: 500 !important; text-transform: none !important; letter-spacing: 0 !important;
}
.woocommerce-cart .cart .button[name="update_cart"]:hover,
.woocommerce-cart .button.wc-backward:hover,
.woocommerce-cart .coupon .button[name="apply_coupon"]:hover,
.woocommerce .actions .button:hover { border-color: rgba(233,162,59,.5) !important; color: var(--rg-gold) !important; }

/* Coupon input + all checkout/cart text fields -> dark DA */
.woocommerce-cart .coupon .input-text, #coupon_code,
.woocommerce form .form-row input.input-text, .woocommerce-cart input.input-text {
	background: var(--rg-ink) !important; color: var(--rg-paper) !important;
	border: 1px solid var(--rg-line) !important; border-radius: 10px !important;
}
.woocommerce-cart .coupon .input-text::placeholder { color: var(--rg-mut) !important; }

/* ============ Order received (thank-you) page — DA (Phase 4) ============ */
.woocommerce-order { font-family: 'Outfit', sans-serif; color: var(--rg-paper); }
.woocommerce-thankyou-order-received {
	font-family: 'Unbounded', sans-serif; font-size: 22px; font-weight: 700; color: var(--rg-paper);
	text-align: left; margin-bottom: 18px;
}
.woocommerce-order .woocommerce-order-overview,
.woocommerce-order .woocommerce-order-details,
.woocommerce-order .woocommerce-customer-details {
	background: var(--rg-surf); border: 1px solid var(--rg-line); border-radius: 16px;
	padding: 18px 22px; margin: 0 0 20px;
}
.woocommerce-order ul.woocommerce-order-overview { display: flex; flex-wrap: wrap; gap: 10px 28px; list-style: none; }
.woocommerce-order ul.woocommerce-order-overview li {
	border: none !important; flex: 0 0 auto; font-size: 13px; color: var(--rg-mut); text-transform: none; padding: 0;
}
.woocommerce-order ul.woocommerce-order-overview li strong { display: block; color: var(--rg-paper); font-size: 15px; font-weight: 600; margin-top: 2px; }
.woocommerce-order h2, .woocommerce-order h3 { font-family: 'Unbounded', sans-serif; font-size: 16px; color: var(--rg-paper); }
.woocommerce-order table th, .woocommerce-order table td { border-color: var(--rg-line) !important; color: var(--rg-paper); }
.woocommerce-order .woocommerce-Price-amount { color: var(--rg-paper); }
.woocommerce-order mark, .woocommerce-order .woocommerce-order-overview__order strong { background: transparent; color: var(--rg-gold); }

/* ============ Cart drawer footer + cart page fixes (Phase 4) ============ */
/* Flatsome off-canvas mini-cart footer (was white) */
.ux-mini-cart-footer {
	background: var(--rg-ink) !important; border-top: 1px solid var(--rg-line) !important;
	padding: 16px 18px !important; color: var(--rg-paper);
}
.ux-mini-cart-footer .woocommerce-mini-cart__total { color: var(--rg-paper); }
.ux-mini-cart, .widget_shopping_cart_content, .ux-mini-cart-items { background: var(--rg-ink) !important; }
.ux-mini-cart-product, .ux-mini-cart .mini_cart_item { border-color: var(--rg-line) !important; }
.ux-mini-cart .ux-mini-cart-product-name a, .ux-mini-cart-product-name a { color: var(--rg-paper) !important; }
.rg-crypto-icons { display: inline-flex; align-items: center; }

/* Coupon button: kill the doubled/shadow look from Flatsome .is-form */
.woocommerce-cart .coupon .button.is-form,
.woocommerce-cart .coupon button[name="apply_coupon"] {
	box-shadow: none !important; text-shadow: none !important; background-image: none !important;
}
.woocommerce-cart .coupon .button.is-form::before,
.woocommerce-cart .coupon .button.is-form::after { display: none !important; }

/* Quantity steppers (cart page + drawer) -> DA */
.ux-quantity .ux-quantity__button, .quantity .ux-quantity__button,
.ux-quantity input.qty, .quantity input.qty {
	background: var(--rg-surf) !important; color: var(--rg-paper) !important;
	border: 1px solid var(--rg-line) !important; box-shadow: none !important;
}
.ux-quantity__button--minus { border-radius: 8px 0 0 8px !important; }
.ux-quantity__button--plus { border-radius: 0 8px 8px 0 !important; }
.ux-quantity input.qty { border-left: 0 !important; border-right: 0 !important; }
.ux-quantity .ux-quantity__button:hover { color: var(--rg-gold) !important; border-color: rgba(233,162,59,.5) !important; }

/* Crypto gateway icon sizing (kill huge NowPayments logo if it ever returns) */
.wc_payment_method.payment_method_nowpayments img,
li.payment_method_nowpayments > label img { max-height: 24px !important; width: auto !important; }

/* ============ Checkout default layout cleanup + coupon + drawer (Phase 4) ============ */
/* Remove orange border around order-review column (default layout) */
.woocommerce-checkout form.checkout .large-5.col,
.woocommerce-checkout form.checkout .large-5.col .col-inner,
.woocommerce-checkout form.checkout .large-7.col,
.woocommerce-checkout form.checkout .large-7.col .col-inner {
	border: none !important; box-shadow: none !important; outline: none !important;
}
/* Checkout coupon form: kill dashed orange border */
.checkout_coupon.has-border, .checkout_coupon.is-dashed, form.checkout_coupon {
	border: 1px solid var(--rg-line) !important; border-style: solid !important;
	background: var(--rg-surf) !important; border-radius: 12px !important;
}
.checkout_coupon .button.expand, .woocommerce-form-coupon .button {
	background: linear-gradient(180deg, var(--rg-gold2), var(--rg-gold)) !important; color:#241502 !important;
	border:none !important; border-radius:10px !important; text-transform:none !important; box-shadow:none !important;
}
/* Always show the checkout coupon field (no "Have a coupon? click here" toggle).
   Flatsome surcharge le template : form.checkout_coupon > .coupon > .flex-row >
   .flex-col.flex-grow (input) + .flex-col (bouton). On garde donc le form en
   display:block (la mise en page est gérée par .flex-row Flatsome) et on force
   juste l'input à remplir sa colonne (sinon il reste à sa largeur intrinsèque). */
.woocommerce-checkout .woocommerce-form-coupon-toggle { display: none !important; }
.woocommerce-checkout form.checkout_coupon { display: block !important; margin: 0 0 20px !important; }
.woocommerce-checkout form.checkout_coupon #coupon_code { width: 100% !important; max-width: none !important; }

/* Cart page coupon: hide "Coupon" widget title + its rule, add breathing room */
.woocommerce-cart .ux-cart-coupon .widget-title { display: none !important; }
.woocommerce-cart .ux-cart-coupon { border-top: 0 !important; margin-top: 16px !important; padding-top: 0 !important; }
.woocommerce-cart .cart_totals { padding-bottom: 22px !important; }

/* Coupon button on cart page: gold to match */
.woocommerce-cart .ux-cart-coupon .button[name="apply_coupon"] {
	background: linear-gradient(180deg, var(--rg-gold2), var(--rg-gold)) !important; color:#241502 !important;
	border:none !important; border-radius:10px !important;
}

/* Drawer: footer pinned to bottom, items area scrolls */
.off-canvas-cart #cart-popup, #cart-popup .cart-popup-inner { display:flex; flex-direction:column; height:100%; }
#cart-popup .widget_shopping_cart, #cart-popup .widget_shopping_cart_content { display:flex; flex-direction:column; flex:1 1 auto; min-height:0; }
#cart-popup .ux-mini-cart-items, #cart-popup ul.cart_list, #cart-popup ul.product_list_widget { flex:1 1 auto; overflow-y:auto; }
.ux-mini-cart-footer { margin-top:auto; }

/* Drawer quantity steppers visible + styled */
#cart-popup .ux-quantity, .widget_shopping_cart .ux-quantity { display:inline-flex; align-items:center; margin-top:6px; }
#cart-popup .ux-quantity input.qty { width:38px; text-align:center; }

/* Checkout crypto selector: align label + icons */
.woocommerce-checkout .payment_methods li > label { vertical-align: middle; }
.woocommerce-checkout .payment_methods li > input.input-radio { vertical-align: middle; margin-top: 0; }
.woocommerce-checkout .payment_methods li.payment_method_nowpayments label {
	display:inline-flex; align-items:center; gap:8px; vertical-align:middle;
}
.rg-crypto-icons { display:inline-flex; align-items:center; gap:3px; vertical-align:middle; }
.rg-crypto-icons svg { display:block; }

/* Cart: hide Update cart (auto-update on quantity change) — Phase 4 */
.woocommerce-cart .actions button[name="update_cart"], .woocommerce-cart .actions input[name="update_cart"] { display: none !important; }

/* Order received: purchased license key(s) highlight (Phase 4) */
.rg-order-keys {
	font-family: 'Outfit', sans-serif; background: var(--rg-surf,#121828);
	border: 1px solid rgba(233,162,59,.35); border-radius: 16px; padding: 18px 20px; margin: 0 0 22px;
}
.rg-order-keys__head { font-family: 'Unbounded', sans-serif; font-size: 15px; color: var(--rg-paper,#EDEFF5); display:flex; align-items:center; gap:8px; margin-bottom: 14px; }
.rg-order-keys__icon { font-size: 18px; }
.rg-order-key { margin-bottom: 10px; }
.rg-order-key__name { display:block; font-size: 12.5px; color: var(--rg-mut,#99A0B2); margin-bottom: 5px; }
.rg-order-key__row { display:flex; gap:10px; align-items:stretch; flex-wrap:wrap; }
.rg-order-key__code {
	flex:1 1 220px; background: var(--rg-ink,#0A0D15); color: var(--rg-gold,#E9A23B);
	border:1px solid var(--rg-line,rgba(242,240,234,.12)); border-radius:10px;
	padding:0 14px; height:44px; display:flex; align-items:center; font-size:15px; letter-spacing:.04em;
	word-break:break-all; font-family:'Outfit',monospace;
}
.rg-order-key__row .rg-copy-key {
	background: linear-gradient(180deg, var(--rg-gold2,#F6C36B), var(--rg-gold,#E9A23B)) !important; color:#241502 !important;
	border:none !important; border-radius:10px !important; height:44px; padding:0 20px !important;
	text-transform:none !important; margin:0 !important; font-weight:600;
}
.rg-order-keys__hint { font-size: 13px; color: var(--rg-mut,#99A0B2); margin: 12px 0 0; }

/* Copy-to-clipboard toast (Phase 4) */
.rg-copy-toast {
	position: fixed; left: 50%; bottom: 28px; transform: translate(-50%, 12px);
	background: #121828; color: #EDEFF5; border: 1px solid rgba(70,213,132,.5);
	border-radius: 10px; padding: 11px 18px; font-family: 'Outfit', sans-serif; font-size: 14px;
	box-shadow: 0 16px 40px -12px rgba(0,0,0,.7); z-index: 100000; opacity: 0; transition: opacity .25s, transform .25s; pointer-events: none;
}
.rg-copy-toast.show { opacity: 1; transform: translate(-50%, 0); }
.rg-copy-key.rg-copied { background: #46D584 !important; color: #06281a !important; }

/* ============================================================
   MY ACCOUNT — shell, navigation, content panels (DA)
   Standard WooCommerce + Flatsome vertical-tabs markup.
   ============================================================ */

/* Page-title header (dashboard + every endpoint): blend into the site, DA type */
.my-account-header.page-title { padding: 42px 0 30px !important; position: relative; border-bottom: 1px solid var(--rg-line); }
.my-account-header .page-title-bg { background-color: #0A0D15 !important; }
.my-account-header .page-title-bg-overlay { background: none !important; opacity: 0 !important; }
.my-account-header h1 {
	font-family: 'Unbounded', sans-serif !important; font-weight: 700; color: var(--rg-paper);
	font-size: clamp(26px, 3.4vw, 34px); letter-spacing: .01em; text-transform: none !important; margin-bottom: 8px !important;
}
.my-account-header small {
	display: inline-block; font-family: 'Outfit', sans-serif !important; color: var(--rg-gold) !important;
	font-size: 12px; font-weight: 600; letter-spacing: .22em; text-transform: uppercase;
}

/* Shell layout: sidebar + content with breathing room */
.woocommerce-account .page-wrapper.my-account { font-family: 'Outfit', sans-serif; }
.woocommerce-account .my-account .row.vertical-tabs { display: flex; flex-wrap: wrap; gap: 26px; align-items: flex-start; }
.woocommerce-account .my-account .row.vertical-tabs > .large-3.col,
.woocommerce-account .my-account .row.vertical-tabs > .large-9.col { padding-left: 0; padding-right: 0; }

/* --- Sidebar card --- */
.woocommerce-account .my-account .vertical-tabs > .large-3.col {
	flex: 0 0 250px; max-width: 250px;
	background: var(--rg-surf); border: 1px solid var(--rg-line) !important;
	border-radius: 16px; padding: 22px 14px 16px;
}
.woocommerce-account .my-account .vertical-tabs > .large-3.col.col-border { border-right: 1px solid var(--rg-line) !important; }

/* Avatar — stack image over name, centered */
.woocommerce-account .account-user.circle {
	display: flex; flex-direction: column; align-items: center; text-align: center;
	gap: 8px; margin: 0 auto 18px; color: var(--rg-paper);
}
.woocommerce-account .account-user.circle .image { margin: 0 !important; }
.woocommerce-account .account-user.circle img.avatar,
.woocommerce-account .account-user.circle .account-icon {
	border-radius: 999px; border: 2px solid rgba(233,162,59,.45);
	box-shadow: 0 8px 26px -12px rgba(233,162,59,.5);
}
.woocommerce-account .account-user.circle .user-name {
	font-family: 'Unbounded', sans-serif; font-weight: 600; font-size: 13.5px;
	color: var(--rg-paper); word-break: break-word; line-height: 1.35;
}
.woocommerce-account .account-user.circle .user-name em {
	display: block; font-style: normal; font-family: 'Outfit', sans-serif;
	color: var(--rg-mut); font-size: 11.5px; margin-top: 2px;
}

/* Vertical navigation — kill Flatsome underline indicators, build DA rows */
.woocommerce-account .account-nav.nav-line > li > a::before,
.woocommerce-account .account-nav.nav-line > li > a::after { display: none !important; }
.woocommerce-account .account-nav { border: 0; }
.woocommerce-account .account-nav li { margin: 0 0 3px; border: 0 !important; }
.woocommerce-account .account-nav li a {
	display: flex; align-items: center; gap: 11px;
	padding: 11px 13px; border-radius: 11px; border: 0 !important;
	font-family: 'Outfit', sans-serif; font-weight: 500; font-size: 14px;
	text-transform: none !important; letter-spacing: 0 !important; line-height: 1.2;
	color: var(--rg-mut) !important; transition: background .15s, color .15s;
}
.woocommerce-account .account-nav li a:hover { background: rgba(242,240,234,.05); color: var(--rg-paper) !important; }
.woocommerce-account .account-nav li.is-active a,
.woocommerce-account .account-nav li.active a {
	background: rgba(233,162,59,.12); color: var(--rg-gold) !important; box-shadow: inset 3px 0 0 var(--rg-gold);
}
/* Nav icons (consistent with the site's emoji vocabulary) */
.woocommerce-account .account-nav li a::before {
	font-size: 15px; line-height: 1; width: 18px; text-align: center; opacity: .9; flex: none;
}
.woocommerce-account .account-nav li.woocommerce-MyAccount-navigation-link--dashboard a::before { content: "🏠"; }
.woocommerce-account .account-nav li.woocommerce-MyAccount-navigation-link--view-license-keys a::before { content: "🔑"; }
.woocommerce-account .account-nav li.woocommerce-MyAccount-navigation-link--orders a::before { content: "🧾"; }
.woocommerce-account .account-nav li.woocommerce-MyAccount-navigation-link--edit-account a::before { content: "⚙️"; }
.woocommerce-account .account-nav li.woocommerce-MyAccount-navigation-link--customer-logout a::before { content: "↪"; }
.woocommerce-account .account-nav li.woocommerce-MyAccount-navigation-link--customer-logout a:hover { color: #ff8585 !important; background: rgba(255,107,107,.08); }

/* --- Content panel card --- */
.woocommerce-account .my-account .vertical-tabs > .large-9.col { flex: 1 1 0; min-width: 0; }
.woocommerce-account .woocommerce-MyAccount-content {
	background: var(--rg-surf); border: 1px solid var(--rg-line);
	border-radius: 16px; padding: 26px 28px; color: var(--rg-paper);
}
.woocommerce-account .woocommerce-MyAccount-content > p { color: #c7ccd9; line-height: 1.75; }
.woocommerce-account .woocommerce-MyAccount-content a { color: var(--rg-gold); }
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3,
.woocommerce-account .woocommerce-MyAccount-content legend,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-order-details__title,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-column__title {
	font-family: 'Unbounded', sans-serif !important; color: var(--rg-paper); font-size: 17px;
}

/* Dashboard: greeting + intro */
.woocommerce-account .woocommerce-MyAccount-content > p:first-of-type { font-size: 16px; color: var(--rg-paper); }
.woocommerce-account .woocommerce-MyAccount-content > p:first-of-type strong { color: var(--rg-gold); }

/* Dashboard license overview */
.rg-dashboard-licenses h3 { font-family: 'Unbounded', sans-serif; font-size: 16px; margin: 4px 0 14px; }
.rg-license-table { width: 100%; border-collapse: collapse; }
.rg-license-table th { text-align: left; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--rg-mut); font-weight: 600; padding: 0 .7em 8px; }
.rg-license-table td { padding: .55em .7em; border-top: 1px solid var(--rg-line); vertical-align: middle; }
.rg-license-table .rg-license-key { font-family: 'Outfit', monospace; font-size: .9em; color: var(--rg-gold); letter-spacing: .03em; }
.rg-license-table .rg-copy-key,
.rg-dashboard-licenses .button.is-outline {
	background: transparent !important; color: var(--rg-paper) !important;
	border: 1px solid var(--rg-line) !important; border-radius: 9px !important;
	text-transform: none !important; box-shadow: none !important; font-weight: 500;
}
.rg-license-table .rg-copy-key:hover,
.rg-dashboard-licenses .button.is-outline:hover { border-color: rgba(233,162,59,.6) !important; color: var(--rg-gold) !important; }
.rg-dashboard-greeting { font-size: 17px; color: var(--rg-paper); margin-bottom: 6px; }
.rg-dashboard-greeting strong { color: var(--rg-gold); font-weight: 600; }
/* Quick-link cards (Discord / Product status / F.A.Q) */
.rg-dashboard-links { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 24px; }
.rg-dashboard-links a {
	display: flex; align-items: center; gap: 11px; padding: 16px 18px;
	background: var(--rg-ink); border: 1px solid var(--rg-line); border-radius: 14px;
	color: var(--rg-paper) !important; font-size: 14px; font-weight: 500; line-height: 1.25;
	opacity: 1; transition: border-color .15s, transform .15s, background .15s;
}
.rg-dashboard-links a:hover { border-color: rgba(233,162,59,.55); background: rgba(233,162,59,.06); transform: translateY(-2px); }
.rg-dashboard-links .rg-dl-ico { flex: none; width: 22px; height: 22px; color: var(--rg-gold); display: inline-flex; align-items: center; justify-content: center; }
.rg-dashboard-links .rg-dl-ico svg { width: 22px; height: 22px; display: block; }
.rg-dashboard-links a:hover .rg-dl-ico { color: var(--rg-gold2); }
/* Hide Flatsome's duplicate dashboard buttons (nav already lists them) */
.woocommerce-account .woocommerce-MyAccount-content ul.dashboard-links { display: none !important; }
@media (max-width: 560px) { .rg-dashboard-links { grid-template-columns: 1fr; } }

/* Orders table */
.woocommerce-account .account-orders-table,
.woocommerce-account .woocommerce-MyAccount-content table.shop_table {
	background: transparent; border: 0; width: 100%; border-collapse: collapse; margin: 4px 0 0;
}
.woocommerce-account .woocommerce-MyAccount-content table.shop_table th {
	text-align: left; font-family: 'Outfit', sans-serif; font-size: 11px; letter-spacing: .08em;
	text-transform: uppercase; color: var(--rg-mut); font-weight: 600; border: 0; border-bottom: 1px solid var(--rg-line); padding: 0 12px 10px;
}
.woocommerce-account .woocommerce-MyAccount-content table.shop_table td {
	border: 0; border-bottom: 1px solid var(--rg-line); padding: 14px 12px; color: var(--rg-paper); vertical-align: middle;
}
.woocommerce-account .woocommerce-MyAccount-content table.shop_table tr:last-child td { border-bottom: 0; }
.woocommerce-account .account-orders-table .woocommerce-Price-amount { color: var(--rg-paper); }
/* Order status colour by row state */
.woocommerce-orders-table__cell-order-status { font-weight: 600; }
.woocommerce-orders-table__row--status-completed .woocommerce-orders-table__cell-order-status,
.woocommerce-orders-table__row--status-processing .woocommerce-orders-table__cell-order-status { color: var(--rg-ok, #46D584); }
.woocommerce-orders-table__row--status-pending .woocommerce-orders-table__cell-order-status,
.woocommerce-orders-table__row--status-on-hold .woocommerce-orders-table__cell-order-status { color: #ffd166; }
.woocommerce-orders-table__row--status-cancelled .woocommerce-orders-table__cell-order-status,
.woocommerce-orders-table__row--status-failed .woocommerce-orders-table__cell-order-status { color: #ff8585; }

/* Account buttons (view order, invoice, view license) */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-button.button,
.woocommerce-account .woocommerce-MyAccount-content .button.view,
.woocommerce-account .woocommerce-MyAccount-content a.button:not(.rg-copy-key) {
	background: var(--rg-ink) !important; color: var(--rg-paper) !important;
	border: 1px solid var(--rg-line) !important; border-radius: 9px !important;
	text-transform: none !important; letter-spacing: 0 !important; font-weight: 500;
	box-shadow: none !important; padding: 8px 14px !important; margin: 0 6px 6px 0; display: inline-flex; align-items: center;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-button.button:hover,
.woocommerce-account .woocommerce-MyAccount-content .button.view:hover,
.woocommerce-account .woocommerce-MyAccount-content a.button:not(.rg-copy-key):hover { border-color: rgba(233,162,59,.6) !important; color: var(--rg-gold) !important; }

/* Edit-account + forms */
.woocommerce-account .woocommerce-MyAccount-content form .woocommerce-form-row label,
.woocommerce-account .woocommerce-MyAccount-content form label { color: var(--rg-paper); font-weight: 500; font-size: 13.5px; }
.woocommerce-account .woocommerce-MyAccount-content fieldset { border: 1px solid var(--rg-line); border-radius: 12px; padding: 16px 18px; margin: 22px 0 0; }
.woocommerce-account .woocommerce-MyAccount-content fieldset legend { padding: 0 8px; font-size: 14px; }
.woocommerce-account .woocommerce-MyAccount-content .input-text,
.woocommerce-account .woocommerce-MyAccount-content input[type="text"],
.woocommerce-account .woocommerce-MyAccount-content input[type="email"],
.woocommerce-account .woocommerce-MyAccount-content input[type="password"],
.woocommerce-account .woocommerce-MyAccount-content select {
	background: var(--rg-ink) !important; color: var(--rg-paper) !important;
	border: 1px solid var(--rg-line) !important; border-radius: 10px !important;
}
.woocommerce-account .woocommerce-MyAccount-content .input-text::placeholder { color: var(--rg-mut) !important; }
.woocommerce-account .woocommerce-MyAccount-content em,
.woocommerce-account .woocommerce-MyAccount-content .description { color: var(--rg-mut); }
.woocommerce-account .woocommerce-MyAccount-content button[type="submit"],
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button.button {
	background: linear-gradient(180deg, var(--rg-gold2), var(--rg-gold)) !important; color: #241502 !important;
	border: none !important; border-radius: 11px !important; text-transform: none !important;
	font-weight: 600 !important; padding: 13px 24px !important; box-shadow: none !important;
}
.woocommerce-account .woocommerce-MyAccount-content button[type="submit"]:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button.button:hover { filter: brightness(1.05); transform: translateY(-1px); }

/* view-license-keys table */
.woocommerce-account .woocommerce-MyAccount-content h3.product-name { font-family: 'Unbounded', sans-serif; font-size: 15px; margin: 18px 0 8px; }
.woocommerce-account .woocommerce-MyAccount-content .license-key,
.woocommerce-account .woocommerce-MyAccount-content td.license-key { font-family: 'Outfit', monospace; color: var(--rg-gold); letter-spacing: .03em; }

/* view-order detail: order-details + customer-details as inner cards */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-order-details,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-customer-details {
	background: var(--rg-ink); border: 1px solid var(--rg-line); border-radius: 14px; padding: 18px 20px; margin: 0 0 18px;
}
.woocommerce-account .woocommerce-MyAccount-content mark.order-number,
.woocommerce-account .woocommerce-MyAccount-content mark.order-date,
.woocommerce-account .woocommerce-MyAccount-content mark.order-status { background: transparent; color: var(--rg-gold); font-weight: 600; }
.woocommerce-account .woocommerce-MyAccount-content .wc-item-meta { list-style: none; margin: 6px 0 0; font-size: 13px; color: var(--rg-mut); }
.woocommerce-account .woocommerce-MyAccount-content .wc-item-meta strong { color: var(--rg-paper); }
.woocommerce-account .woocommerce-MyAccount-content address { font-style: normal; color: var(--rg-paper); border: 0; padding: 0; line-height: 1.7; }

/* My Account responsive: sidebar full-width above content on mobile */
@media (max-width: 849px) {
	.woocommerce-account .my-account .vertical-tabs > .large-3.col { flex: 0 0 100%; max-width: 100%; }
	.woocommerce-account .woocommerce-MyAccount-content { padding: 20px 18px; }
}

/* ============================================================
   LOGIN / REGISTER (logged-out my-account)
   ============================================================ */
.woocommerce-account:not(.logged-in) .account-container { font-family: 'Outfit', sans-serif; }
.account-login-inner, .account-register-inner {
	background: var(--rg-surf); border: 1px solid var(--rg-line); border-radius: 16px; padding: 28px 28px 24px; height: 100%;
}
.account-container h1, .account-container h2, .account-container h3,
.account-login-inner .lightbox-heading, .account-register-inner .lightbox-heading {
	font-family: 'Unbounded', sans-serif !important; color: var(--rg-paper); font-size: 19px; margin-bottom: 16px;
}
.woocommerce-form-login label, .woocommerce-form-register label { color: var(--rg-paper); font-weight: 500; font-size: 13.5px; }
.woocommerce-form-login .input-text, .woocommerce-form-register .input-text,
.woocommerce-form-login input[type="text"], .woocommerce-form-login input[type="password"],
.woocommerce-form-register input[type="email"], .woocommerce-form-register input[type="password"] {
	background: var(--rg-ink) !important; color: var(--rg-paper) !important;
	border: 1px solid var(--rg-line) !important; border-radius: 10px !important;
}
.woocommerce-form-login .input-text::placeholder, .woocommerce-form-register .input-text::placeholder { color: var(--rg-mut) !important; }
.woocommerce-form-login .woocommerce-form-login__submit,
.woocommerce-form-register .woocommerce-form-register__submit,
.account-container button[type="submit"], .account-container .button.primary {
	background: linear-gradient(180deg, var(--rg-gold2), var(--rg-gold)) !important; color: #241502 !important;
	border: none !important; border-radius: 11px !important; text-transform: none !important;
	font-weight: 600 !important; padding: 13px 24px !important; box-shadow: none !important; width: 100%;
}
.account-container button[type="submit"]:hover { filter: brightness(1.05); transform: translateY(-1px); }
.woocommerce-form-login__rememberme, .account-container .woocommerce-form__label-for-checkbox { color: var(--rg-mut); font-size: 13px; font-weight: 400; }
.account-container .lost_password a, .woocommerce-LostPassword a { color: var(--rg-gold); font-size: 13px; }
.account-container .social-login { margin-top: 14px; border-top: 1px solid var(--rg-line); padding-top: 14px; }
.account-container .privacy-policy-text, .account-register-inner .woocommerce-privacy-policy-text { color: var(--rg-mut); font-size: 12.5px; }
@media (max-width: 849px) {
	.account-login-inner, .account-register-inner { margin-bottom: 18px; }
}

/* ============================================================
   CONTENT PAGES — prose / legal / FAQ typography (DA)
   Scoped to body.rg-doc: Terms 590, Privacy 192, Refund 46030, F.A.Q 20655.
   ============================================================ */
.rg-doc #content { color: #c7ccd9; }
.rg-doc #content .row.row-main { max-width: 880px; margin-left: auto; margin-right: auto; }

.rg-doc #content h1, .rg-doc #content h2, .rg-doc #content h3,
.rg-doc #content h4, .rg-doc #content h5 {
	font-family: 'Unbounded', sans-serif !important; color: var(--rg-paper) !important; line-height: 1.3;
}
.rg-doc #content h1 { font-size: clamp(26px, 4vw, 34px); margin: 0 0 .6em; }
.rg-doc #content h2 { font-size: 22px; margin: 1.5em 0 .5em; }
.rg-doc #content h3 { font-size: 19px; margin: 1.4em 0 .5em; }
.rg-doc #content h4 { font-size: 16px; margin: 1.2em 0 .4em; }
.rg-doc #content p, .rg-doc #content li, .rg-doc #content td {
	font-family: 'Outfit', sans-serif; font-size: 15.5px; line-height: 1.8; color: #c7ccd9;
}
.rg-doc #content a:not(.accordion-title):not(.button) { color: var(--rg-gold); text-decoration: underline; text-underline-offset: 2px; }
.rg-doc #content a:not(.accordion-title):not(.button):hover { color: var(--rg-gold2); }
.rg-doc #content strong, .rg-doc #content b { color: var(--rg-paper); }
.rg-doc #content ul, .rg-doc #content ol { padding-left: 1.25em; margin: 0 0 1.1em; }
.rg-doc #content li { margin: 0 0 .5em; }
.rg-doc #content ul li::marker { color: var(--rg-gold); }
.rg-doc #content hr { border: 0; border-top: 1px solid var(--rg-line); margin: 1.8em 0; }
.rg-doc #content blockquote {
	border-left: 3px solid var(--rg-gold); background: var(--rg-surf);
	border-radius: 0 10px 10px 0; padding: 14px 18px; margin: 1.2em 0; color: #c7ccd9;
}
.rg-doc #content table { width: 100%; border-collapse: collapse; margin: 1.2em 0; }
.rg-doc #content table th, .rg-doc #content table td {
	border: 1px solid var(--rg-line); padding: 10px 13px; text-align: left; color: var(--rg-paper);
}
.rg-doc #content table th { background: var(--rg-surf); font-family: 'Outfit', sans-serif; font-weight: 600; }

/* FAQ accordion (Flatsome) -> DA cards */
.rg-doc .accordion .accordion-item {
	border: 1px solid var(--rg-line); border-radius: 12px; background: var(--rg-surf);
	margin: 0 0 10px; overflow: hidden; transition: border-color .15s;
}
.rg-doc .accordion .accordion-item:hover { border-color: rgba(233,162,59,.35); }
/* Keep Flatsome's absolute toggle (left), just give the title room + DA type.
   (A previous flex layout made the chevron overlap the question text.) */
.rg-doc .accordion-title.plain, .rg-doc a.accordion-title {
	display: block !important; position: relative;
	font-family: 'Outfit', sans-serif !important; font-weight: 600 !important; font-size: 15.5px !important;
	color: var(--rg-paper) !important; padding: 15px 20px 15px 52px !important; margin: 0 !important;
	border: 0 !important; text-decoration: none !important; line-height: 1.45;
}
.rg-doc .accordion-title.plain:hover { color: var(--rg-gold) !important; }
.rg-doc .accordion-title.active { color: var(--rg-gold) !important; }
.rg-doc .accordion-title .toggle {
	left: 16px !important; right: auto !important; top: 50% !important; margin-top: -0.75em !important;
	color: var(--rg-gold) !important; background: transparent !important; border: 0 !important; transition: transform .2s;
}
.rg-doc .accordion-title.active .toggle { transform: rotate(180deg); }
.rg-doc .accordion-inner { padding: 4px 20px 16px 52px !important; color: #c7ccd9; }
.rg-doc .accordion-inner .container { padding-left: 0 !important; padding-right: 0 !important; max-width: none !important; }
/* Answers are plain paragraphs in Outfit (no more heading-tag soup) */
.rg-doc .accordion-inner p, .rg-doc .accordion-inner li,
.rg-doc .accordion-inner h3, .rg-doc .accordion-inner h4 {
	font-family: 'Outfit', sans-serif !important; font-size: 15px !important; font-weight: 400 !important;
	color: #c7ccd9 !important; line-height: 1.75; margin: 0 0 .7em;
}
.rg-doc .accordion-inner blockquote {
	border-left: 3px solid var(--rg-gold); background: var(--rg-ink);
	border-radius: 0 10px 10px 0; padding: 12px 16px; margin: .6em 0 0;
}
.rg-doc .accordion-inner blockquote p { margin: 0; color: var(--rg-paper) !important; }

/* ============================================================
   ORDER-PAY / payment box — dark DA (was light #dcd7e2)
   Applies to checkout + order-pay (both carry .woocommerce-checkout).
   ============================================================ */
/* No list markers on payment methods (the radio is the selector) */
.woocommerce-checkout #payment ul.payment_methods,
.woocommerce-checkout #payment ul.payment_methods > li {
	list-style: none !important; margin-left: 0 !important; padding-left: 0 !important;
}
.woocommerce-checkout #payment ul.payment_methods > li::marker { content: "" !important; }
/* Expanded payment box (Stripe card form / gateway instructions) -> dark */
.woocommerce-checkout #payment div.payment_box {
	background: var(--rg-ink) !important; color: var(--rg-paper) !important;
	border: 1px solid var(--rg-line); border-radius: 10px;
}
.woocommerce-checkout #payment div.payment_box,
.woocommerce-checkout #payment div.payment_box p,
.woocommerce-checkout #payment div.payment_box label { color: var(--rg-paper) !important; }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: var(--rg-ink) !important; }
.woocommerce-checkout #payment div.payment_box input.input-text,
.woocommerce-checkout #payment div.payment_box textarea,
.woocommerce-checkout #payment div.payment_box select,
.woocommerce-checkout #payment .wc-stripe-elements-field,
.woocommerce-checkout #payment .wc-stripe-upe-element,
.woocommerce-checkout #payment .StripeElement {
	background: var(--rg-surf) !important; color: var(--rg-paper) !important;
	border: 1px solid var(--rg-line) !important; border-radius: 8px !important;
}
.woocommerce-checkout #payment div.payment_box input.input-text::placeholder { color: var(--rg-mut) !important; }

/* Order-pay specific page: order review + summary as a DA card */
.woocommerce-order-pay #order_review {
	background: var(--rg-surf); border: 1px solid var(--rg-line); border-radius: 16px; padding: 18px 20px; margin-top: 14px;
}
.woocommerce-order-pay table.shop_table { width: 100%; border-collapse: collapse; font-family: 'Outfit', sans-serif; }
.woocommerce-order-pay table.shop_table th,
.woocommerce-order-pay table.shop_table td { border-color: var(--rg-line) !important; color: var(--rg-paper); padding: 10px 12px; }
.woocommerce-order-pay table.shop_table .woocommerce-Price-amount { color: var(--rg-paper); }
.woocommerce-order-pay #payment { background: transparent !important; }
.woocommerce-order-pay #payment ul.payment_methods { border: 1px solid var(--rg-line); border-radius: 12px; background: var(--rg-ink); }
.woocommerce-order-pay #place_order {
	background: linear-gradient(180deg, var(--rg-gold2), var(--rg-gold)) !important; color: #241502 !important;
	border: none !important; border-radius: 12px !important; text-transform: none !important; font-weight: 600 !important; width: 100%; padding: 15px !important;
}

/* ============================================================
   PAYMENT METHODS page — modern DA redesign (page 58483)
   Content wrapped in .rg-payments (wp:html block, no wpautop).
   ============================================================ */
.rg-payments { max-width: 1060px; margin: 0 auto; padding: 54px 22px 72px; font-family: 'Outfit', sans-serif; color: var(--rg-paper); }
.rg-payments * { box-sizing: border-box; }
.rg-pm-eyebrow { display: inline-block; font-size: 12px; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; color: var(--rg-gold); margin-bottom: 14px; }
.rg-pm-hero h1 { font-family: 'Unbounded', sans-serif; font-weight: 700; font-size: clamp(30px, 5vw, 46px); color: var(--rg-paper); margin: 0 0 14px; line-height: 1.1; }
.rg-pm-hero p { font-size: 16.5px; line-height: 1.7; color: #c7ccd9; max-width: 660px; margin: 0; }
.rg-pm-section { margin-top: 52px; }
.rg-pm-section > h2 { font-family: 'Unbounded', sans-serif; font-weight: 700; font-size: 22px; color: var(--rg-paper); margin: 0 0 6px; }
.rg-pm-section > .rg-pm-sub { color: var(--rg-mut); font-size: 14.5px; margin: 0 0 22px; line-height: 1.6; }
.rg-pm-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.rg-pm-card { background: var(--rg-surf); border: 1px solid var(--rg-line); border-radius: 18px; padding: 26px; transition: border-color .15s, transform .15s; position: relative; }
.rg-pm-card:hover { border-color: rgba(233,162,59,.4); transform: translateY(-3px); }
.rg-pm-ico { width: 46px; height: 46px; border-radius: 13px; display: flex; align-items: center; justify-content: center; background: rgba(233,162,59,.12); color: var(--rg-gold); margin-bottom: 16px; }
.rg-pm-ico svg { width: 24px; height: 24px; }
.rg-pm-card h3 { font-family: 'Unbounded', sans-serif; font-weight: 600; font-size: 17px; color: var(--rg-paper); margin: 0 0 8px; }
.rg-pm-card p { color: #c7ccd9; font-size: 14.5px; line-height: 1.65; margin: 0; }
.rg-pm-badge { position: absolute; top: 22px; right: 22px; font-size: 11px; font-weight: 600; letter-spacing: .04em; color: #46D584; background: rgba(70,213,132,.1); border: 1px solid rgba(70,213,132,.35); border-radius: 99px; padding: 4px 11px; }
.rg-pm-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.rg-pm-tag { font-size: 12.5px; font-weight: 600; color: var(--rg-paper); background: var(--rg-ink); border: 1px solid var(--rg-line); border-radius: 99px; padding: 6px 13px; }
/* steps */
.rg-pm-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.rg-pm-step { background: var(--rg-surf); border: 1px solid var(--rg-line); border-radius: 16px; padding: 20px 18px; }
.rg-pm-step .n { width: 30px; height: 30px; border-radius: 9px; background: rgba(233,162,59,.12); color: var(--rg-gold); font-family: 'Unbounded', sans-serif; font-weight: 700; font-size: 14px; display: flex; align-items: center; justify-content: center; margin-bottom: 12px; }
.rg-pm-step h4 { font-family: 'Outfit', sans-serif; font-weight: 600; font-size: 14.5px; color: var(--rg-paper); margin: 0 0 5px; }
.rg-pm-step p { font-size: 13px; color: var(--rg-mut); line-height: 1.55; margin: 0; }
/* brand pills */
.rg-pm-brands { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.rg-pm-brand { display: inline-flex; align-items: center; gap: 9px; font-size: 13.5px; font-weight: 600; color: var(--rg-paper); background: var(--rg-ink); border: 1px solid var(--rg-line); border-radius: 12px; padding: 10px 16px; }
.rg-pm-brand .dot { width: 9px; height: 9px; border-radius: 99px; flex: none; }
/* gift cards */
.rg-pm-gc-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 14px; }
.rg-pm-gc { background: var(--rg-surf); border: 1px solid var(--rg-line); border-radius: 14px; overflow: hidden; transition: border-color .15s, transform .15s; }
.rg-pm-gc:hover { border-color: rgba(233,162,59,.4); transform: translateY(-2px); }
/* white logo strip — real brand logos render in their true colours */
.rg-pm-gc .gc-logo { height: 64px; background-color: #fff; background-repeat: no-repeat; background-position: center; }
.rg-pm-gc .gc-meta { padding: 13px 16px 15px; }
.rg-pm-gc .gc-meta b { display: block; font-family: 'Outfit', sans-serif; font-weight: 600; font-size: 14px; color: var(--rg-paper); }
.rg-pm-gc .gc-meta span { font-size: 12.5px; color: var(--rg-mut); }
.rg-pm-gc.gc-amazon  .gc-logo { background-image: url('assets/pay/amazon.svg');        background-size: auto 22px; }
.rg-pm-gc.gc-eneba   .gc-logo { background-image: url('assets/pay/eneba.svg');         background-size: auto 26px; }
.rg-pm-gc.gc-instant .gc-logo { background-image: url('assets/pay/instantgaming.svg'); background-size: auto 18px; }
.rg-pm-gc.gc-steam   .gc-logo { background-image: url('assets/pay/steam.svg');         background-size: auto 34px; }
.rg-pm-gc.gc-paysafe .gc-logo { background-image: url('assets/pay/paysafecard.svg');   background-size: auto 15px; }

/* brand pills (PayPal / Cash App / Venmo) -> small coloured monogram */
.rg-pm-brand .bi {
	width: 22px; height: 22px; border-radius: 6px; flex: none;
	display: inline-flex; align-items: center; justify-content: center;
	font-family: 'Unbounded', sans-serif; font-weight: 700; font-size: 11.5px; color: #fff;
}
.rg-pm-brand.brand-paypal .bi  { background: #0070BA; }
.rg-pm-brand.brand-cashapp .bi { background: #00C244; }
.rg-pm-brand.brand-venmo .bi   { background: #008CFF; }

/* ============================================================
   PRODUCT LOOP CARDS — shop / category / related (best-seller look)
   Matches the home best-sellers; home uses .rgh-pcard so it's untouched.
   ============================================================ */
.product-small.box {
	background: var(--rg-surf); border: 1px solid var(--rg-line); border-radius: 18px;
	overflow: hidden; height: 100%; transition: transform .25s, border-color .25s, box-shadow .25s;
}
.product-small.box:hover { transform: translateY(-5px); border-color: rgba(233,162,59,.4); box-shadow: 0 18px 40px -22px rgba(0,0,0,.7); }
/* Square image area (all product logos are square) — no letterbox, no white band */
.product-small.box .box-image {
	position: relative !important; aspect-ratio: 1 / 1; height: auto !important;
	margin: 0 !important; padding: 0 !important; overflow: hidden;
	background: radial-gradient(380px 150px at 50% 125%, rgba(233,162,59,.12), transparent), var(--rg-ink);
	border-bottom: 1px solid var(--rg-line);
}
.product-small.box .box-image::before { display: none !important; padding-top: 0 !important; }
.product-small.box .box-image > a,
.product-small.box .box-image .image-cover { position: static !important; height: 100% !important; }
.product-small.box .box-image img {
	position: absolute !important; inset: 0; width: 100% !important; height: 100% !important;
	object-fit: cover !important; border-radius: 0 !important; padding: 0 !important; margin: 0 !important;
}
.product-small.box .box-text { padding: 15px 17px 18px; text-align: left; }
.product-small .name.product-title a,
.product-small .name.product-title { font-family: 'Outfit', sans-serif; font-weight: 600; font-size: 14.5px; color: var(--rg-paper); line-height: 1.35; }
.product-small .name.product-title a:hover { color: var(--rg-gold); }
.product-small .price { color: var(--rg-gold) !important; font-weight: 600; }
.product-small .price del, .product-small .price del .amount { color: var(--rg-mut) !important; font-weight: 400; }
.product-small .price ins { text-decoration: none; }
.product-small .star-rating::before, .product-small .star-rating span::before { color: var(--rg-gold); }
.product-small .review-count { color: var(--rg-mut); }
.product-small .badge.badge-circle .badge-inner, .product-small .callout .badge-inner.on-sale {
	background: linear-gradient(180deg, var(--rg-gold2), var(--rg-gold)) !important; color: #241502 !important; border: 0 !important;
}
/* Archive header */
.tax-product_cat .shop-page-title, .post-type-archive-product .shop-page-title { font-family: 'Unbounded', sans-serif; color: var(--rg-paper); }
.tax-product_cat .woocommerce-breadcrumb, .post-type-archive-product .woocommerce-breadcrumb { color: var(--rg-mut); font-size: 12.5px; }
.tax-product_cat .woocommerce-breadcrumb a:hover { color: var(--rg-gold); }

/* Kill Flatsome's white/grey card backgrounds (has-shadow + .dark variants).
   Affects category, shop products, related, and cart cross-sells. box-shade
   (shop category tiles) keeps its own dark overlay. */
.woocommerce .product .box:not(.box-shade),
.has-shadow .product .box:not(.box-shade),
.dark .has-shadow .product .box:not(.box-shade) { background-color: var(--rg-surf) !important; }
.woocommerce .has-shadow > .col > .col-inner,
.woocommerce [class*="row-box-shadow"] > .col > .col-inner { background-color: transparent !important; }
.woocommerce .product .box:not(.box-shade) .box-text { background-color: var(--rg-surf) !important; }

/* ============================================================
   SHOP page — category tiles (.box-shade) in the DA
   ============================================================ */
.post-type-archive-product .product-category .col-inner > a > .box.box-shade,
.post-type-archive-product .product-category .box.box-shade {
	border-radius: 16px; overflow: hidden; border: 1px solid var(--rg-line);
	transition: transform .25s, border-color .25s, box-shadow .25s;
}
.post-type-archive-product .product-category .box.box-shade:hover {
	transform: translateY(-5px); border-color: rgba(233,162,59,.45); box-shadow: 0 18px 40px -22px rgba(0,0,0,.75);
}
.post-type-archive-product .product-category .box-shade .box-text,
.post-type-archive-product .product-category .box-shade .box-text * {
	font-family: 'Unbounded', sans-serif; color: #fff !important;
}
.post-type-archive-product .product-category .box-shade .box-text .count {
	font-family: 'Outfit', sans-serif; color: var(--rg-gold) !important; opacity: .9; font-weight: 600;
}

/* Gift Card Balance form (PW Gift Cards, page /balance/) — DA */
.page-id-940 input[type="text"], .page-id-940 .pw-gift-card-balance input {
	background: var(--rg-ink) !important; color: var(--rg-paper) !important;
	border: 1px solid var(--rg-line) !important; border-radius: 10px !important;
}
.page-id-940 input[type="text"]::placeholder { color: var(--rg-mut) !important; }
.page-id-940 button, .page-id-940 input[type="submit"], .page-id-940 .button {
	background: linear-gradient(180deg, var(--rg-gold2), var(--rg-gold)) !important; color: #241502 !important;
	border: none !important; border-radius: 10px !important; text-transform: none !important; font-weight: 600 !important;
}
.page-id-940 .pw-gift-card-balance, .page-id-940 .gift-card-balance-result {
	background: var(--rg-surf); border: 1px solid var(--rg-line); border-radius: 14px; padding: 18px 20px; color: var(--rg-paper);
}

/* ============================================================
   SINGLE PRODUCT — DA polish
   ============================================================ */
.single-product .woocommerce-breadcrumb { color: var(--rg-mut); font-size: 12.5px; letter-spacing: .03em; }
.single-product .woocommerce-breadcrumb a { color: var(--rg-mut); }
.single-product .woocommerce-breadcrumb a:hover { color: var(--rg-gold); }
.single-product h1.product-title, .single-product h1.product_title, .single-product .product-title.entry-title {
	font-family: 'Unbounded', sans-serif !important; font-weight: 700; color: var(--rg-paper); letter-spacing: .01em;
}
.single-product .product-gallery img, .single-product .woocommerce-product-gallery__image img { border-radius: 16px; }
.single-product .woocommerce-product-gallery__wrapper { border-radius: 16px; }
.single-product .product-thumbnails img, .single-product .thumbnails img { border-radius: 10px; }
.single-product .single-product-price .price, .single-product .product-info .price .amount { color: var(--rg-paper); }
.single-product .reset_variations { color: var(--rg-mut); font-size: 12px; }
/* Tabs (description / reviews / additional info) */
.single-product .woocommerce-tabs .nav-tabs, .single-product .woocommerce-tabs ul.tabs { border-bottom: 1px solid var(--rg-line); }
.single-product .woocommerce-tabs ul.tabs li, .single-product .woocommerce-tabs .nav-tabs li { background: transparent !important; border: 0 !important; }
.single-product .woocommerce-tabs ul.tabs li a, .single-product .woocommerce-tabs .nav-tabs li a {
	color: var(--rg-mut) !important; font-family: 'Outfit', sans-serif; font-weight: 600; text-transform: none; letter-spacing: 0;
}
.single-product .woocommerce-tabs ul.tabs li.active a, .single-product .woocommerce-tabs ul.tabs li a:hover,
.single-product .woocommerce-tabs .nav-tabs li.active a { color: var(--rg-gold) !important; }
.single-product .woocommerce-tabs ul.tabs li.active, .single-product .woocommerce-tabs .nav-tabs li.active { box-shadow: inset 0 -2px 0 var(--rg-gold); }
.single-product .woocommerce-tabs .panel, .single-product .woocommerce-tabs .tab-panels { color: #c7ccd9; }
.single-product .woocommerce-Tabs-panel h2, .single-product .woocommerce-tabs h2 { font-family: 'Unbounded', sans-serif; color: var(--rg-paper); font-size: 18px; }
/* Reviews */
.single-product #reviews .commentlist li .comment-text { background: var(--rg-surf); border: 1px solid var(--rg-line); border-radius: 12px; padding: 14px 16px; }
.single-product #reviews .star-rating { color: var(--rg-gold); }
.single-product #review_form_wrapper { background: var(--rg-surf); border: 1px solid var(--rg-line); border-radius: 14px; padding: 18px 20px; }
.single-product #review_form input.input-text, .single-product #review_form textarea {
	background: var(--rg-ink) !important; color: var(--rg-paper) !important; border: 1px solid var(--rg-line) !important; border-radius: 10px !important;
}
/* Related products heading */
.single-product .related.products > h2, .single-product .up-sells > h2 { font-family: 'Unbounded', sans-serif; color: var(--rg-paper); font-size: 20px; }

/* ============================================================
   ABOUT US page — modern DA redesign (page 624, .rg-about)
   ============================================================ */
.rg-about { max-width: 1080px; margin: 0 auto; padding: 56px 22px 76px; font-family: 'Outfit', sans-serif; color: var(--rg-paper); }
.rg-about * { box-sizing: border-box; }
.rg-ab-eyebrow { display: inline-block; font-size: 12px; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; color: var(--rg-gold); margin-bottom: 14px; }
/* Hero */
.rg-ab-hero { display: grid; grid-template-columns: 1.5fr 1fr; gap: 36px; align-items: center; }
.rg-ab-hero h1 { font-family: 'Unbounded', sans-serif; font-weight: 700; font-size: clamp(32px, 5.2vw, 52px); line-height: 1.05; color: var(--rg-paper); margin: 0 0 16px; }
.rg-ab-hero h1 .g { color: var(--rg-gold); }
.rg-ab-hero p { font-size: 16.5px; line-height: 1.75; color: #c7ccd9; margin: 0; max-width: 560px; }
.rg-ab-mascot { display: flex; justify-content: center; }
.rg-ab-mascot img { width: 100%; max-width: 320px; height: auto; filter: drop-shadow(0 24px 60px rgba(233,162,59,.22)); }
/* Stats band */
.rg-ab-stats { display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; margin: 48px 0 8px; }
.rg-ab-stat { background: var(--rg-surf); border: 1px solid var(--rg-line); border-radius: 16px; padding: 22px 14px; text-align: center; transition: border-color .2s, transform .2s; }
.rg-ab-stat:hover { border-color: rgba(233,162,59,.4); transform: translateY(-3px); }
.rg-ab-stat .num { display: block; font-family: 'Unbounded', sans-serif; font-weight: 700; font-size: clamp(20px, 2.4vw, 27px); color: var(--rg-gold); line-height: 1; }
.rg-ab-stat .lab { display: block; margin-top: 8px; font-size: 12px; color: var(--rg-mut); line-height: 1.35; }
/* Sections */
.rg-ab-section { margin-top: 56px; }
.rg-ab-section h2 { font-family: 'Unbounded', sans-serif; font-weight: 700; font-size: clamp(22px, 3vw, 28px); color: var(--rg-paper); margin: 0 0 14px; }
.rg-ab-prose p { font-size: 15.5px; line-height: 1.85; color: #c7ccd9; margin: 0 0 16px; max-width: 820px; }
.rg-ab-prose strong { color: var(--rg-paper); }
/* Values grid */
.rg-ab-values { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; margin-top: 24px; }
.rg-ab-val { display: flex; gap: 16px; align-items: flex-start; background: var(--rg-surf); border: 1px solid var(--rg-line); border-radius: 16px; padding: 22px 24px; transition: border-color .2s, transform .2s; }
.rg-ab-val:hover { border-color: rgba(233,162,59,.4); transform: translateY(-3px); }
.rg-ab-val .ico { flex: none; width: 46px; height: 46px; border-radius: 13px; display: flex; align-items: center; justify-content: center; background: rgba(233,162,59,.12); color: var(--rg-gold); }
.rg-ab-val .ico svg { width: 24px; height: 24px; }
.rg-ab-val h3 { font-family: 'Unbounded', sans-serif; font-weight: 600; font-size: 16px; color: var(--rg-paper); margin: 2px 0 6px; }
.rg-ab-val p { font-size: 14px; line-height: 1.6; color: #c7ccd9; margin: 0; }
/* CTA */
.rg-ab-cta { margin-top: 52px; display: flex; align-items: center; justify-content: space-between; gap: 22px; flex-wrap: wrap; background: linear-gradient(120deg, rgba(233,162,59,.14), rgba(233,162,59,.04) 60%), var(--rg-surf); border: 1px solid rgba(233,162,59,.3); border-radius: 20px; padding: 30px 34px; }
.rg-ab-cta .txt b { font-family: 'Unbounded', sans-serif; font-size: 20px; color: var(--rg-paper); display: block; margin-bottom: 6px; }
.rg-ab-cta .txt span { font-size: 14px; color: var(--rg-mut); }
.rg-ab-cta .acts { display: flex; gap: 12px; flex-wrap: wrap; }
.rg-ab-btn { display: inline-flex; align-items: center; gap: 9px; border-radius: 12px; padding: 14px 24px; font-weight: 600; font-size: 14.5px; transition: transform .15s, box-shadow .15s, background .15s; }
.rg-ab-btn.gold { background: linear-gradient(180deg, var(--rg-gold2), var(--rg-gold)); color: #241502 !important; }
.rg-ab-btn.gold:hover { transform: translateY(-2px); box-shadow: 0 12px 30px -12px rgba(233,162,59,.6); }
.rg-ab-btn.discord { background: #5865F2; color: #fff !important; }
.rg-ab-btn.discord:hover { background: #4752c4; transform: translateY(-2px); }
.rg-ab-btn svg { width: 20px; height: 16px; }
@media (max-width: 860px) {
	.rg-ab-hero { grid-template-columns: 1fr; text-align: center; }
	.rg-ab-hero p { margin-left: auto; margin-right: auto; }
	.rg-ab-mascot { order: -1; }
	.rg-ab-stats { grid-template-columns: repeat(3, 1fr); }
	.rg-ab-values { grid-template-columns: 1fr; }
	.rg-ab-cta { flex-direction: column; text-align: center; align-items: center; }
}
@media (max-width: 480px) { .rg-ab-stats { grid-template-columns: repeat(2, 1fr); } }
.rg-pm-note { margin-top: 16px; font-size: 13.5px; color: var(--rg-mut); line-height: 1.6; }
/* CTA (Discord) */
.rg-pm-cta { margin-top: 26px; display: flex; align-items: center; gap: 18px; flex-wrap: wrap; background: linear-gradient(120deg, rgba(88,101,242,.16), rgba(88,101,242,.05) 60%), var(--rg-surf); border: 1px solid rgba(88,101,242,.35); border-radius: 18px; padding: 22px 26px; }
.rg-pm-cta .txt { flex: 1 1 280px; }
.rg-pm-cta .txt b { font-family: 'Unbounded', sans-serif; font-size: 16px; color: var(--rg-paper); display: block; margin-bottom: 4px; }
.rg-pm-cta .txt span { font-size: 13.5px; color: var(--rg-mut); }
.rg-pm-cta a { flex: none; display: inline-flex; align-items: center; gap: 9px; background: #5865F2; color: #fff !important; border-radius: 12px; padding: 13px 22px; font-weight: 600; font-size: 14.5px; transition: background .15s, transform .15s; }
.rg-pm-cta a:hover { background: #4752c4; transform: translateY(-1px); }
.rg-pm-cta a svg { width: 20px; height: 16px; }
/* reassurance */
.rg-pm-reassure { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 52px; border-top: 1px solid var(--rg-line); padding-top: 32px; }
.rg-pm-reassure > div { display: flex; align-items: center; gap: 11px; font-size: 14px; color: #c7ccd9; }
.rg-pm-reassure .ri { flex: none; width: 38px; height: 38px; border-radius: 11px; background: rgba(233,162,59,.1); color: var(--rg-gold); display: flex; align-items: center; justify-content: center; }
.rg-pm-reassure .ri svg { width: 20px; height: 20px; }
.rg-pm-reassure b { color: var(--rg-paper); font-weight: 600; }
@media (max-width: 760px) {
	.rg-pm-grid, .rg-pm-reassure { grid-template-columns: 1fr; }
	.rg-pm-steps { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 480px) { .rg-pm-steps { grid-template-columns: 1fr; } }

/* Header responsive : jusqu'à ~1110px la barre desktop ne tient pas sur une ligne
   (logo + wordmark + nav + recherche + devise + panier + login) → menu cassé. On bascule
   sur le menu mobile (hamburger) propre de Flatsome sur cette plage, en répliquant l'état <=849px. */
@media (min-width: 850px) and (max-width: 1110px) {
	.header-main .show-for-medium { display: block !important; }
	.header-main .hide-for-medium { display: none !important; }
}

/* ---------- Achat par ticket Discord (transition, inc/discord-checkout.php) ---------- */
.rg-dcp { margin: 16px 0; padding: 16px 18px; border: 1px solid rgba(233,162,59,.55); border-radius: 10px; background: rgba(233,162,59,.07); }
.rg-dcp-head { margin: 0 0 8px; color: #F6C36B; font-weight: 800; font-size: 1.02em; line-height: 1.35; }
.rg-dcp-txt { margin: 0; color: var(--rg-paper, #EDEFF5); font-size: .93em; line-height: 1.5; }
.rg-dcp-cta { margin: 14px 0 0; }
.rg-dcp-btn { display: inline-flex; align-items: center; gap: 9px; padding: 11px 20px; border-radius: 8px; background: #5865F2; color: #fff !important; font-weight: 700; line-height: 1; text-decoration: none; transition: filter .15s, transform .15s; }
.rg-dcp-btn:hover { filter: brightness(1.12); transform: translateY(-1px); }
.rg-dcp-ico { flex: none; }
.rg-dcp-cart { margin: 14px 0 0; padding: 12px 14px; border: 1px solid var(--rg-line, rgba(242,240,234,.09)); border-radius: 8px; background: rgba(10,13,21,.35); }
.rg-dcp-cart-t { margin: 0 0 8px; color: var(--rg-mut, #99A0B2); font-size: .82em; text-transform: uppercase; letter-spacing: .06em; }
.rg-dcp-list { margin: 0; padding: 0; list-style: none; font-size: .93em; line-height: 1.6; }
.rg-dcp-list li { color: var(--rg-paper, #EDEFF5); }
.rg-dcp-qty { color: #F6C36B; font-weight: 700; }
.rg-dcp-total { margin: 8px 0 0; padding-top: 8px; border-top: 1px solid var(--rg-line, rgba(242,240,234,.09)); font-weight: 700; }
.rg-dcp-proceed { margin: 0; }
.rg-dcp-proceed .rg-dcp-btn { width: 100%; justify-content: center; }
.rg-dcp--checkout { max-width: 640px; margin: 24px auto; }
.rg-dcp--product { margin: 12px 0 18px; }
@media (max-width: 549px) { .rg-dcp { padding: 14px; } .rg-dcp-btn { width: 100%; justify-content: center; } }

/* ---------- Transfert vers EldroMods (inc/rebrand-transfer.php) ---------- */
#rg-move { position: fixed; left: 0; right: 0; bottom: 0; z-index: 9999; background: #16141F; border-top: 1px solid rgba(242,240,234,.12); box-shadow: 0 -10px 30px rgba(0,0,0,.45); color: #EDEFF5; }
#rg-move[hidden], #rg-gate[hidden] { display: none; }
.rg-move-in { max-width: 1100px; margin: 0 auto; padding: 13px 18px; display: flex; align-items: center; gap: 14px; }
.rg-move-dot { width: 9px; height: 9px; border-radius: 50%; background: #8B5CF6; flex: none; box-shadow: 0 0 0 4px rgba(139,92,246,.22); }
.rg-move-txt { margin: 0; flex: 1 1 auto; color: #C9CEDB; font-size: .92em; line-height: 1.5; }
.rg-move-txt strong { color: #fff; }
.rg-move-cta { flex: none; display: inline-block; padding: 10px 20px; border-radius: 7px; background: #8B5CF6; color: #fff !important; font-weight: 700; text-decoration: none; white-space: nowrap; transition: filter .15s, transform .15s; }
.rg-move-cta:hover { filter: brightness(1.12); transform: translateY(-1px); color: #fff !important; }
.rg-move-x { flex: none; padding: 0 4px; border: 0; background: none; color: #99A0B2; font-size: 26px; line-height: 1; cursor: pointer; }
.rg-move-x:hover { color: #fff; }

#rg-gate { position: fixed; inset: 0; z-index: 10000; display: flex; align-items: center; justify-content: center; padding: 20px; background: rgba(6,8,14,.82); }
.rg-gate-card { max-width: 520px; width: 100%; padding: 30px 32px; border: 1px solid rgba(139,92,246,.4); border-radius: 14px; background: #12101B; text-align: center; }
.rg-gate-kicker { margin: 0 0 10px; color: #C4B5FD; font-size: .76em; letter-spacing: .14em; text-transform: uppercase; }
.rg-gate-card h2 { margin: 0 0 12px; color: #fff; font-size: 1.55em; line-height: 1.25; }
.rg-gate-card h2 span { color: #A78BFA; }
.rg-gate-txt { margin: 0 0 22px; color: #C9CEDB; font-size: .95em; line-height: 1.6; }
.rg-gate-cta { display: inline-block; padding: 13px 30px; border-radius: 8px; background: #8B5CF6; color: #fff !important; font-weight: 700; text-decoration: none; }
.rg-gate-cta:hover { filter: brightness(1.12); color: #fff !important; }
.rg-gate-x { display: block; margin: 14px auto 0; padding: 6px; border: 0; background: none; color: #8C93A6; font-size: .86em; text-decoration: underline; cursor: pointer; }
.rg-gate-x:hover { color: #EDEFF5; }

.rg-move-block { margin: 18px 0; padding: 16px 18px; border: 1px solid rgba(139,92,246,.4); border-radius: 10px; background: rgba(139,92,246,.08); }
.rg-move-block-h { margin: 0 0 8px; color: #C4B5FD; font-weight: 800; font-size: 1.02em; }
.rg-move-block-t { margin: 0; color: var(--rg-paper, #EDEFF5); font-size: .93em; line-height: 1.55; }
.rg-move-block-c { margin: 14px 0 0; }
.rg-move-block--home { max-width: 1080px; margin: 22px auto 0; }
.rg-dcp-alt { margin: 10px 0 0; color: var(--rg-mut, #99A0B2); font-size: .86em; }
.rg-dcp-alt a { color: #C4B5FD; }

@media (max-width: 720px) {
	.rg-move-in { flex-wrap: wrap; padding: 12px 14px; gap: 10px; }
	.rg-move-txt { flex: 1 1 100%; font-size: .88em; }
	.rg-move-cta { flex: 1 1 auto; text-align: center; }
	.rg-gate-card { padding: 24px 20px; }
}
.rg-move-block--hero { padding: 22px 24px; }
.rg-move-block--hero .rg-move-block-h { font-size: 1.18em; margin-bottom: 10px; }
.rg-move-block--hero .rg-move-block-t + .rg-move-block-t { margin-top: 9px; }
.rg-move-block--hero .rg-move-block-t a { color: #C4B5FD; text-decoration: underline; }
.rg-move-block-c { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.rg-move-alt { display: inline-block; padding: 10px 18px; border: 1px solid rgba(196,181,253,.42); border-radius: 7px; color: #C4B5FD !important; font-weight: 700; text-decoration: none; }
.rg-move-alt:hover { border-color: #C4B5FD; color: #EDEFF5 !important; }
