/*
Theme Name: Loud Child
Theme URI: https://wildish.pk
Description: Child theme for Loud - A Modern WordPress Theme for the Music Industry
Author: Wildish
Author URI: https://wildish.pk
Template: loud
Version: 1.0.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: loud-child
*/

/* Add your custom CSS below this line */

/* ============================================================================
   EVENT BLUR FOR NON-LOGGED-IN USERS
   ============================================================================ */

/* Blur events for users who are not logged in */
body.user-not-logged-in .entry-event,
body.user-not-logged-in .hentry.event,
body.user-not-logged-in .event-list .entry,
body.user-not-logged-in .event-item,
body.user-not-logged-in article.event {
	filter: blur(5px);
	-webkit-filter: blur(5px);
	pointer-events: none;
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	position: relative;
	cursor: not-allowed;
}

/* Prevent any clicks or interactions on blurred events */
body.user-not-logged-in .entry-event *,
body.user-not-logged-in .hentry.event *,
body.user-not-logged-in .event-list .entry *,
body.user-not-logged-in .event-item *,
body.user-not-logged-in article.event * {
	pointer-events: none;
	cursor: not-allowed;
}

/* Optional: Add an overlay message encouraging users to log in */
body.user-not-logged-in .event-list::before,
body.user-not-logged-in .entry-content .event-layout-standard::before {
	content: "Please log in to view event details";
	display: block;
	text-align: center;
	font-size: 1.2em;
	padding: 20px;
	background: rgba(0, 0, 0, 0.8);
	color: #fff;
	margin-bottom: 20px;
	border-radius: 5px;
}

/* ============================================================================
   PASSWORD VISIBILITY TOGGLE FIX
   ============================================================================ */

/* Position password field container as relative for absolute positioning */
.woocommerce-form-row.woocommerce-form-row--wide,
.woocommerce form .form-row,
.password-input {
	position: relative;
}

/* Position the password toggle icon inside the field at top right */
.woocommerce .show-password-input,
.show-password-input,
.password-input .show-password-input,
.woocommerce-Input--password + .show-password-input {
	position: absolute !important;
	right: 15px !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	margin: 0 !important;
	cursor: pointer;
	z-index: 10;
	display: inline-block !important;
}

/* Ensure password input has padding on right for the icon */
.woocommerce input[type="password"],
input[type="password"].woocommerce-Input {
	padding-right: 45px !important;
}

/* Style the toggle icon */
.show-password-input::before,
.show-password-input {
	width: 20px;
	height: 20px;
	line-height: 20px;
	text-align: center;
}

/* ============================================================================
   PASSWORD EYE ICON - WHITE LINE STYLE FOR DARK THEME
   ============================================================================ */

/* Style the eye icon to be white and visible */
.woocommerce .show-password-input,
.show-password-input {
	color: #fff !important;
	opacity: 1 !important;
	background: transparent !important;
	border: none !important;
	font-size: 18px !important;
}

/* Ensure the eye icon uses the correct font icon */
.show-password-input::before {
	content: "\f06e" !important; /* FontAwesome eye icon */
	font-family: "Font Awesome 5 Free", "FontAwesome" !important;
	font-weight: 400 !important;
	color: #fff !important;
	display: inline-block;
}

/* When password is visible, show eye-slash */
.show-password-input.display-password::before {
	content: "\f070" !important; /* FontAwesome eye-slash icon */
}

/* ============================================================================
   HIDE CART ICON FOR NON-LOGGED-IN USERS
   ============================================================================ */

/* Hide ONLY cart icon when user is not logged in (keep account icon visible) */
body.user-not-logged-in .cta-item.cta-item-cart,
body.user-not-logged-in .cta-item[class*="cart"],
body.user-not-logged-in .header-cart,
body.user-not-logged-in .site-header .cart,
body.user-not-logged-in .menu-cart-item,
body.user-not-logged-in .woocommerce-menu-item-cart,
body.user-not-logged-in li.menu-item-cart,
body.user-not-logged-in .header-cart-link {
	display: none !important;
}

/* ============================================================================
   CART DROPDOWN POSITIONING FIX - IMPROVED
   ============================================================================ */

/* Push cart dropdown higher - comprehensive targeting */
.header-cart-content,
.site-header .cart-dropdown,
.mini-cart-content,
.widget_shopping_cart_content,
.cta-item-cart .cta-dropdown,
.cta-item .cta-dropdown,
.widget_shopping_cart .widget_shopping_cart_content,
.site-header .mini-cart-content,
body .cta-dropdown {
	top: 70px !important;
	margin-top: 0 !important;
	transform: translateY(0) !important;
}

/* Ensure the dropdown container allows proper positioning */
.cta-item-cart,
.cta-item {
	position: relative;
}

/* ============================================================================
   EMPTY CART TEXT REPLACEMENT (CSS BACKUP)
   ============================================================================ */

/* Hide original text and replace with ticket-specific message */
.woocommerce-mini-cart__empty-message:empty::after,
p.cart-empty:empty::after {
	content: "No tickets in your cart yet.";
	display: block;
}

/* ============================================================================
   CHECKBOX ALIGNMENT FIX
   ============================================================================ */

/* Fix checkbox alignment - remove extra margin/padding */
.woocommerce-form-row--wide input[type="checkbox"],
.woocommerce-form-row input[type="checkbox"],
.woocommerce form .form-row input[type="checkbox"] {
	margin-left: 0 !important;
	margin-right: 8px !important;
	padding: 0 !important;
	vertical-align: middle;
}

/* Fix checkbox label alignment */
.woocommerce-form__label.woocommerce-form__label-for-checkbox,
.woocommerce-form-row--wide label,
.woocommerce form .form-row label {
	margin-left: 0 !important;
	padding-left: 0 !important;
	display: flex;
	align-items: center;
	gap: 8px;
}

/* Fix the form row container */
.woocommerce-form-row--wide,
.woocommerce form .form-row {
	margin-bottom: 1em !important;
	padding: 0 !important;
}

/* Ensure checkbox and label are on same line */
.woocommerce-form__label-for-checkbox {
	display: flex !important;
	align-items: center !important;
	margin-bottom: 1.5em !important;
}


/* ============================================================================
   HIDE EASY LOGIN PLUGIN ELEMENTS (MODAL, OPAC, NOTICE)
   ============================================================================ */

/* Hide only modal, opacity overlay, and notice elements */
.xoo-el-modal,
.xoo-el-opac,
.xoo-el-popup-notice {
	display: none !important;
	visibility: hidden !important;
}

/* ============================================================================
   EASY LOGIN TABS STYLING
   ============================================================================ */

/* Tab container */
.xoo-el-header ul.xoo-el-tabs {
	display: flex;
	gap: 0;
	border-bottom: none;
	margin: 0;
	padding: 0;
	list-style: none;
}

/* Inactive tab styling */
.xoo-el-header ul.xoo-el-tabs li {
	flex: 1;
	padding: 15px 20px !important;
	background-color: #1b1b1b !important;
	border: none !important;
	color: #f4f4f4 !important;
	cursor: pointer;
	font-size: 16px !important;
	font-weight: 600 !important;
	transition: all 0.3s ease;
	text-transform: uppercase;
	text-align: center;
	margin: 0 !important;
}

/* Active tab styling */
.xoo-el-header ul.xoo-el-tabs li.xoo-el-active {
	background-color: #c09d5f !important;
	color: #000 !important;
	font-weight: 700 !important;
}

/* Hover effect for inactive tabs */
.xoo-el-header ul.xoo-el-tabs li:hover:not(.xoo-el-active) {
	background-color: #2a2a2a !important;
}

/* ============================================================================
   MY ACCOUNT PAGE - ENABLE VERTICAL SCROLL
   ============================================================================ */

/* Enable scrolling on the main container */
.xoo-el-container,
.xoo-el-main,
.xoo-el-srcont,
.xoo-el-form-container {
	overflow-y: auto !important;
	max-height: 100vh !important;
}

/* Allow content to wrap and scroll */
body.woocommerce-account {
	overflow-y: auto !important;
}

.woocommerce-MyAccount-content {
	overflow-y: auto !important;
	max-height: auto !important;
}

/* Fix form container height */
.xoo-el-form-inline {
	overflow-y: auto !important;
	max-height: fit-content !important;
}

/* Allow page body to scroll */
html, body {
	overflow-y: auto !important;
	height: auto !important;
}

/* ============================================================================
   EASY LOGIN INPUT FIELDS - FULL WIDTH
   ============================================================================ */

/* Form fields container - full width */
.xoo-el-fields-cont,
.xoo-aff-group,
.xoo-aff-cont-text,
.xoo-aff-cont-password,
.xoo-aff-cont-email,
.xoo-el-fields {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	margin-bottom: 15px !important;
}

/* Input fields full width */
.xoo-aff-input-group,
.xoo-aff-input-group input {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Input fields styling */
input[class*="xoo-aff"],
.xoo-el-form-container input[type="text"],
.xoo-el-form-container input[type="email"],
.xoo-el-form-container input[type="password"] {
	width: 100% !important;
	margin: 0 !important;
	padding: 12px 15px !important;
	box-sizing: border-box !important;
}

/* Remove any parent container constraints */
.xoo-el-section {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Form container full width */
.xoo-el-form-inline {
	width: 100% !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

/* ============================================================================
   SIGN IN / SIGN UP BUTTONS - FULL WIDTH
   ============================================================================ */

/* Button full width */
.xoo-el-action-btn,
.xoo-el-login-btn,
.xoo-el-register-btn,
button.xoo-el-action-btn,
.xoo-el-form-container button[type="submit"] {
	width: 100% !important;
	margin: 0 !important;
	padding: 15px 20px !important;
	box-sizing: border-box !important;
}

/* ============================================================================
   CHECKBOX ALIGNMENT FIX - TERMS OF SERVICE
   ============================================================================ */

/* Checkbox field container - flex layout */
.xoo-el-login-btm-fields,
.xoo-aff-group.xoo-aff-cont-checkbox {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	margin: 15px 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

/* Checkbox input alignment */
input[type="checkbox"][class*="xoo"],
.xoo-el-form-container input[type="checkbox"] {
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
	min-width: 18px !important;
	height: 18px !important;
	cursor: pointer;
	flex-shrink: 0;
}

/* Checkbox label alignment */
label[class*="xoo-el"],
.xoo-el-form-label,
.xoo-aff-group label {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	margin: 0 !important;
	padding: 0 !important;
	cursor: pointer;
	font-weight: normal;
}

/* Terms text alignment */
.xoo-el-form-label + *,
label + span {
	margin-left: 0 !important;
}

/* ============================================================================
   LOGIN FORM WIDTH - 600PX
   ============================================================================ */

/* Make login form wider */
#login {
	width: 600px !important;
	max-width: 100% !important;
	margin: 0 auto !important;
}

#login form {
	width: 100% !important;
}

/* Center the login wrapper */
body.login {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 100vh;
}

/* Adjust pending message width */
.pending-message {
	width: 100% !important;
	box-sizing: border-box !important;
}

/* ============================================================================
   HIDE REGISTRATION ERRORS ON LOGIN PAGE
   ============================================================================ */

/* Hide WooCommerce registration form errors when pending */
body.login #login .woocommerce-error,
body.login #login .woocommerce-message,
body.login #login ul.woocommerce-error,
body.login #login .notice:not(.pending-message-notice) {
	display: none !important;
}

/* Hide the registration form when showing pending message */
body.login #login form {
	display: none;
}

/* Show only pending message */
body.login #login .pending-message-notice,
body.login #login .pending-message {
	display: block !important;
}

/* Ensure login message area is visible */
body.login #login {
	margin-top: 50px;
}

/* ============================================================================
   HIDE ALL FORMS AND ERRORS ON PENDING REGISTRATION PAGE
   ============================================================================ */

/* Hide everything on pending page */
body.login.wp-login #login form,
body.login #login_error,
body.login #login .login form,
body.login .woocommerce-form,
body.login form.woocommerce-form-register,
body.login .xoo-el-form-container,
body.login .xoo-el-form-inline {
	display: none !important;
	visibility: hidden !important;
}

/* Hide all error messages */
body.login #login .woocommerce-error,
body.login #login .error,
body.login .woocommerce,
body.login .woocommerce-info,
body.login .woocommerce-message {
	display: none !important;
}

/* Make pending message visible and centered */
body.login #login .pending-message-notice {
	display: block !important;
	visibility: visible !important;
	width: 100% !important;
	margin: 50px 0 !important;
	padding: 0 !important;
}

body.login #login .pending-message {
	display: block !important;
	visibility: visible !important;
	width: 100% !important;
}

/* Hide login nav */
body.login #login nav,
body.login #backtoblog {
	display: none !important;
}

/* ============================================================================
   EVENTS PAGE BLUR (GUEST USERS)
   ============================================================================ */

/* Apply same blur/lock behavior to /events cards for non-logged-in users */
body.user-not-logged-in.page-title-events #shop-index .entry-product,
body.user-not-logged-in.page-title-events #shop-index .product_cat-event {
	filter: blur(5px);
	-webkit-filter: blur(5px);
	pointer-events: none;
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	position: relative;
	cursor: not-allowed;
}

body.user-not-logged-in.page-title-events #shop-index .entry-product *,
body.user-not-logged-in.page-title-events #shop-index .product_cat-event * {
	pointer-events: none;
	cursor: not-allowed;
}

body.user-not-logged-in.page-title-events #shop-index::before {
	content: "Please log in to view event details";
	display: block;
	text-align: center;
	font-size: 1.2em;
	padding: 20px;
	background: rgba(0, 0, 0, 0.8);
	color: #fff;
	margin-bottom: 20px;
	border-radius: 5px;
}

/* ============================================================================
   WOOCOMMERCE VISUAL REFRESH (ACCOUNT / CART / CHECKOUT)
   ============================================================================ */

body.woocommerce-page {
	--wc-bg: #0a0e13;
	--wc-panel: #111821;
	--wc-panel-soft: #151e28;
	--wc-border: #253243;
	--wc-text: #eef3f9;
	--wc-muted: #a8b4c2;
	--wc-accent: #c09d5f;
	--wc-accent-strong: #d7b778;
}

/* Keep dark identity but improve depth and readability */
body.woocommerce-page #hero {
	background: linear-gradient(180deg, #494b50 0%, #3c3f44 100%) !important;
}

body.woocommerce-page .page-entry-content .woocommerce {
	max-width: 1120px;
	margin: 0 auto;
	color: var(--wc-text);
}

body.woocommerce-page .page-entry-content .woocommerce a {
	color: var(--wc-accent-strong);
}

body.woocommerce-page .page-entry-content .woocommerce a:hover {
	color: #f1d9ab;
}

body.woocommerce-page .page-entry-content .woocommerce-notices-wrapper .woocommerce-message,
body.woocommerce-page .page-entry-content .woocommerce-notices-wrapper .woocommerce-info,
body.woocommerce-page .page-entry-content .woocommerce-notices-wrapper .woocommerce-error {
	background: rgba(17, 24, 33, 0.96);
	color: var(--wc-text);
	border: 1px solid var(--wc-border);
	border-left: 4px solid var(--wc-accent);
	border-radius: 12px;
	padding: 14px 18px;
	margin-bottom: 18px;
}

body.woocommerce-page .page-entry-content .woocommerce .button,
body.woocommerce-page .page-entry-content .woocommerce button.button,
body.woocommerce-page .page-entry-content .woocommerce input.button {
	border-radius: 10px !important;
	border: 1px solid rgba(192, 157, 95, 0.45) !important;
	background: rgba(192, 157, 95, 0.16) !important;
	color: #f2efe7 !important;
	font-weight: 600;
	letter-spacing: 0.02em;
	padding: 13px 18px !important;
	transition: all 0.2s ease;
}

body.woocommerce-page .page-entry-content .woocommerce .button:hover,
body.woocommerce-page .page-entry-content .woocommerce button.button:hover,
body.woocommerce-page .page-entry-content .woocommerce input.button:hover {
	background: rgba(192, 157, 95, 0.28) !important;
	border-color: rgba(192, 157, 95, 0.8) !important;
	transform: translateY(-1px);
}

body.woocommerce-page .page-entry-content .woocommerce input.input-text,
body.woocommerce-page .page-entry-content .woocommerce select,
body.woocommerce-page .page-entry-content .woocommerce textarea {
	background: #0f151d !important;
	border: 1px solid var(--wc-border) !important;
	color: var(--wc-text) !important;
	border-radius: 10px !important;
	min-height: 46px;
}

body.woocommerce-page .page-entry-content .woocommerce input.input-text:focus,
body.woocommerce-page .page-entry-content .woocommerce select:focus,
body.woocommerce-page .page-entry-content .woocommerce textarea:focus {
	border-color: var(--wc-accent) !important;
	box-shadow: 0 0 0 3px rgba(192, 157, 95, 0.16) !important;
}

body.woocommerce-page .page-entry-content .woocommerce ::placeholder {
	color: #8ea0b3;
}

/* Account page (logged in) */
body.woocommerce-account.logged-in .page-entry-content .woocommerce {
	display: grid;
	grid-template-columns: 240px minmax(0, 1fr);
	gap: 26px;
	align-items: start;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation-link a {
	display: block;
	padding: 12px 14px;
	border-radius: 10px;
	border: 1px solid var(--wc-border);
	background: var(--wc-panel);
	color: var(--wc-text);
	text-decoration: none;
	font-size: 14px;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation-link.is-active a {
	background: linear-gradient(135deg, #d8ba80 0%, #b99356 100%);
	border-color: #c8a368;
	color: #1e1a12;
	font-weight: 700;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content {
	background: linear-gradient(180deg, var(--wc-panel) 0%, var(--wc-panel-soft) 100%);
	border: 1px solid var(--wc-border);
	border-radius: 14px;
	padding: 24px;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content p {
	color: #dce5ef;
	line-height: 1.75;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content table.shop_table {
	background: #0f161f;
	border: 1px solid var(--wc-border);
	border-radius: 12px;
	overflow: hidden;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content table.shop_table th,
body.woocommerce-account.logged-in .woocommerce-MyAccount-content table.shop_table td {
	border-color: var(--wc-border) !important;
	padding: 14px 12px;
}

/* Cart page */
body.woocommerce-cart .page-entry-content .woocommerce-cart-form,
body.woocommerce-cart .page-entry-content .cart-collaterals .cart_totals {
	background: linear-gradient(180deg, var(--wc-panel) 0%, var(--wc-panel-soft) 100%);
	border: 1px solid var(--wc-border);
	border-radius: 14px;
}

body.woocommerce-cart .page-entry-content .woocommerce-cart-form {
	padding: 12px 18px 20px;
}

body.woocommerce-cart table.shop_table.cart {
	border: 0;
	background: transparent;
	margin: 0;
}

body.woocommerce-cart table.shop_table.cart thead th {
	color: #c7d3df;
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	border-bottom: 1px solid var(--wc-border);
	padding: 14px 10px;
}

body.woocommerce-cart table.shop_table.cart td {
	border-top: 1px solid var(--wc-border);
	padding: 14px 10px;
	color: #e7eef7;
}

body.woocommerce-cart table.shop_table.cart .product-thumbnail img {
	width: 84px;
	height: 84px;
	object-fit: cover;
	border-radius: 10px;
	border: 1px solid rgba(255, 255, 255, 0.08);
}

body.woocommerce-cart table.shop_table.cart .product-remove a.remove {
	color: #ff8677 !important;
	border: 1px solid rgba(255, 134, 119, 0.35);
	border-radius: 50%;
	width: 30px;
	height: 30px;
	line-height: 27px;
	text-align: center;
}

body.woocommerce-cart table.shop_table.cart .product-remove a.remove:hover {
	background: rgba(255, 85, 85, 0.16) !important;
}

body.woocommerce-cart table.shop_table.cart .qty {
	width: 90px;
	text-align: center;
}

body.woocommerce-cart table.shop_table.cart .actions {
	padding-top: 18px;
}

body.woocommerce-cart table.shop_table.cart .actions .coupon {
	display: inline-flex;
	align-items: center;
	gap: 10px;
}

body.woocommerce-cart .cart-collaterals {
	margin-top: 22px;
	display: flex;
	justify-content: flex-end;
}

body.woocommerce-cart .cart-collaterals .cart_totals {
	width: min(100%, 420px);
	padding: 22px;
}

body.woocommerce-cart .cart-collaterals .cart_totals h2 {
	margin-bottom: 16px;
	font-size: 30px;
}

body.woocommerce-cart .cart-collaterals .cart_totals .shop_table {
	border: 0;
	margin-bottom: 20px;
}

body.woocommerce-cart .cart-collaterals .cart_totals .shop_table th,
body.woocommerce-cart .cart-collaterals .cart_totals .shop_table td {
	border-color: var(--wc-border);
	padding: 12px 0;
}

body.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
	width: 100%;
	padding: 14px 16px !important;
}

/* Checkout page */
body.woocommerce-checkout form.checkout.woocommerce-checkout {
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(320px, 1fr);
	gap: 24px;
	align-items: start;
}

body.woocommerce-checkout #customer_details,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #order_review,
body.woocommerce-checkout #payment {
	background: linear-gradient(180deg, var(--wc-panel) 0%, var(--wc-panel-soft) 100%);
	border: 1px solid var(--wc-border);
	border-radius: 14px;
}

body.woocommerce-checkout #customer_details {
	padding: 22px;
}

body.woocommerce-checkout #order_review_heading {
	padding: 16px 20px;
	margin: 0 0 12px;
}

body.woocommerce-checkout #order_review {
	padding: 18px 20px;
	margin-bottom: 12px;
}

body.woocommerce-checkout #payment {
	padding: 14px 20px 20px;
}

body.woocommerce-checkout table.shop_table.woocommerce-checkout-review-order-table th,
body.woocommerce-checkout table.shop_table.woocommerce-checkout-review-order-table td {
	border-color: var(--wc-border) !important;
	padding: 12px 0;
}

body.woocommerce-checkout #place_order {
	width: 100%;
	padding: 14px 16px !important;
}

/* My Account (guest) - cleaner login/register card */
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline {
	background: linear-gradient(180deg, var(--wc-panel) 0%, var(--wc-panel-soft) 100%);
	border: 1px solid var(--wc-border);
	border-radius: 14px;
	padding: 18px;
	max-width: 720px;
	margin: 0 auto;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container small {
	color: var(--wc-muted);
}

/* Registration UI polish: spacing + alignment + upload field */
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline {
	padding: 22px 0 18px;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-el-header ul.xoo-el-tabs {
	margin: 0 14px 14px !important;
	border: 1px solid var(--wc-border);
	border-radius: 12px;
	overflow: hidden;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-el-section .xoo-el-fields {
	padding: 0 14px 2px !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-el-section .xoo-el-action-form {
	padding: 0 !important;
	margin: 0 !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-el-section .xoo-el-fields-cont,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-el-section .xoo-aff-group,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-el-section .xoo-aff-input-group {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-el-login-btm-fields,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group.xoo-aff-cont-checkbox_single,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group.xoo-aff-cont-checkbox {
	padding-inline: 14px !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group.xoo-aff-cont-checkbox_single .xoo-aff-checkbox_single {
	width: 100%;
	text-align: left;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group.xoo-aff-cont-checkbox_single .xoo-aff-checkbox_single label {
	display: flex !important;
	align-items: flex-start !important;
	justify-content: flex-start !important;
	width: 100%;
	text-align: left !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group.xoo-aff-cont-checkbox_single input[type="checkbox"] {
	margin-top: 2px !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-el-form-register .xoo_el_reg_terms_cont {
	padding-inline: 14px !important;
	margin: 6px 0 10px !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-el-form-register .xoo_el_reg_terms_cont .xoo-aff-checkbox_single label {
	display: flex !important;
	align-items: flex-start !important;
	justify-content: flex-start !important;
	gap: 10px !important;
	width: 100%;
	text-align: left !important;
	line-height: 1.45;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-el-form-register .xoo_el_reg_terms_cont .xoo-aff-checkbox_single .xoo-terms-text {
	display: inline;
	margin: 0 !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-el-form-register .xoo_el_reg_terms_cont .xoo-aff-checkbox_single .xoo-terms-text a {
	margin: 0 !important;
	padding: 0 !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-el-action-btn {
	width: calc(100% - 28px) !important;
	margin: 8px 14px 0 !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_reference_name_cont,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_nic_number_cont,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_instagram_screenshots_cont {
	padding-inline: 14px !important;
	margin-bottom: 14px !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_reference_name_cont label,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_nic_number_cont label,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_instagram_screenshots_cont label {
	display: block !important;
	font-weight: 600;
	color: var(--wc-text);
	margin: 0 0 8px !important;
	padding: 0 !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_reference_name_cont input[type="text"],
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_nic_number_cont input[type="text"] {
	height: 48px;
	padding: 12px 14px !important;
	border-radius: 10px !important;
	border: 1px solid var(--wc-border) !important;
	background: #111821 !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_instagram_screenshots_cont input[type="file"] {
	width: 100% !important;
	display: block;
	border: 1px dashed #3b4d63 !important;
	border-radius: 10px !important;
	background: #0f151d !important;
	color: #d8e2ed !important;
	padding: 8px !important;
	line-height: 1.4 !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_instagram_screenshots_cont input[type="file"]::file-selector-button,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_instagram_screenshots_cont input[type="file"]::-webkit-file-upload-button {
	background: rgba(192, 157, 95, 0.18);
	border: 1px solid rgba(192, 157, 95, 0.62);
	border-radius: 8px;
	color: #f2e8d2;
	padding: 9px 14px;
	margin-right: 10px;
	font-weight: 600;
	cursor: pointer;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_instagram_screenshots_cont input[type="file"]:hover {
	border-color: var(--wc-accent) !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_instagram_screenshots_cont small {
	display: block;
	margin-top: 8px;
	line-height: 1.45;
	color: #9db0c3 !important;
}

/* Responsive */
@media (max-width: 1024px) {
	body.woocommerce-account.logged-in .page-entry-content .woocommerce {
		grid-template-columns: 1fr;
	}

	body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation ul {
		flex-direction: row;
		flex-wrap: nowrap;
		overflow-x: auto;
		padding-bottom: 6px;
	}

	body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation li {
		flex: 0 0 auto;
		min-width: max-content;
	}

	body.woocommerce-checkout form.checkout.woocommerce-checkout {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 768px) {
	body.woocommerce-page #hero .post-title {
		font-size: 38px;
	}

	body.woocommerce-page .page-entry-content .woocommerce {
		padding-inline: 8px;
	}

	body.woocommerce-cart .page-entry-content .woocommerce-cart-form {
		padding: 10px 12px 14px;
	}

	body.woocommerce-cart table.shop_table.cart .actions {
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
	}

	body.woocommerce-cart table.shop_table.cart .actions .coupon {
		width: 100%;
	}

	body.woocommerce-cart table.shop_table.cart .actions .coupon .input-text {
		flex: 1;
	}

	body.woocommerce-cart table.shop_table_responsive tr td::before,
	body.woocommerce-page table.shop_table_responsive tr td::before {
		color: var(--wc-muted) !important;
		font-size: 11px;
		letter-spacing: 0.07em;
		text-transform: uppercase;
	}

	body.woocommerce-cart table.shop_table.cart .product-thumbnail img {
		width: 70px;
		height: 70px;
	}

	body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-el-header ul.xoo-el-tabs,
	body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-el-section .xoo-el-fields,
	body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-el-login-btm-fields,
	body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group.xoo-aff-cont-checkbox_single,
	body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_reference_name_cont,
	body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_nic_number_cont,
	body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_instagram_screenshots_cont {
		padding-inline: 10px !important;
		margin-inline: 0 !important;
	}

	body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-el-action-btn {
		width: calc(100% - 20px) !important;
		margin: 8px 10px 0 !important;
	}

	body.woocommerce-checkout #customer_details,
	body.woocommerce-checkout #order_review,
	body.woocommerce-checkout #payment {
		padding: 16px;
	}
}

/* ============================================================================
   MY ACCOUNT PAGE SPACING + HERO CLEANUP (2026-03-02)
   ============================================================================ */

/* Remove gray hero band on account page and use site dark background */
body.woocommerce-account #hero {
	background: transparent !important;
}

/* Tighten hero vertical space so form sits closer to "My account" */
body.woocommerce-account #hero-inner {
	padding-top: 52px !important;
}

body.woocommerce-account #hero-content {
	padding: 22px 0 16px !important;
}

/* Override inline VC top gap (currently 90px) on account page */
body.woocommerce-account .page-entry-content > .wvc-row {
	padding-top: 22px !important;
}

/* Restore top padding for login/register card (was forced to 0 globally) */
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline {
	padding: 18px 0 18px !important;
}

/* ============================================================================
   MY ACCOUNT FORM INPUT READABILITY (2026-03-02)
   ============================================================================ */

/* Keep typed text and placeholders visible on dark fields */
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="text"],
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="email"],
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="password"],
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="number"],
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="tel"],
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="file"],
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group select {
	color: #e9f0f7 !important;
	caret-color: #e9f0f7 !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="text"]:focus,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="email"]:focus,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="password"]:focus,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="number"]:focus,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="tel"]:focus,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="file"]:focus,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group select:focus {
	color: #e9f0f7 !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input::placeholder,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group textarea::placeholder {
	color: #9db0c3 !important;
	opacity: 1 !important;
}

/* ============================================================================
   EASY LOGIN DEFAULT FIELDS - DARK BACKGROUND (2026-03-02)
   ============================================================================ */

/* Override plugin inline white backgrounds for built-in register/login fields */
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="text"],
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="email"],
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="password"],
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="number"],
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="tel"],
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="file"],
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group select,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group select + .select2 {
	background-color: #111821 !important;
	border-color: var(--wc-border) !important;
	color: #e9f0f7 !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="text"]:focus,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="email"]:focus,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="password"]:focus,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="number"]:focus,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="tel"]:focus,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input[type="file"]:focus,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group select:focus,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group select + .select2:focus {
	background-color: #0f151d !important;
	color: #e9f0f7 !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-input-group .xoo-aff-input-icon {
	background-color: #0f151d !important;
	color: #9db0c3 !important;
	border-color: var(--wc-border) !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-pw-toggle,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-pw-toggle i {
	color: #9db0c3 !important;
}

/* Browser autofill override on dark account form */
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input:-webkit-autofill,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input:-webkit-autofill:hover,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group input:-webkit-autofill:focus,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group textarea:-webkit-autofill,
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .xoo-aff-group select:-webkit-autofill {
	-webkit-text-fill-color: #e9f0f7 !important;
	caret-color: #e9f0f7 !important;
	-webkit-box-shadow: 0 0 0 1000px #111821 inset !important;
	box-shadow: 0 0 0 1000px #111821 inset !important;
	border: 1px solid var(--wc-border) !important;
	transition: background-color 9999s ease-out 0s;
}

/* Instagram handle field spacing/style in signup form */
body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_instagram_handle_cont {
	padding-inline: 14px !important;
	margin-bottom: 14px !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_instagram_handle_cont label {
	display: block !important;
	font-weight: 600;
	color: var(--wc-text);
	margin: 0 0 8px !important;
	padding: 0 !important;
}

body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_instagram_handle_cont input[type="text"] {
	height: 48px;
	padding: 12px 14px !important;
	border-radius: 10px !important;
	border: 1px solid var(--wc-border) !important;
	background: #111821 !important;
}

@media (max-width: 768px) {
	body.woocommerce-account.user-not-logged-in .xoo-el-form-container.xoo-el-form-inline .loud_instagram_handle_cont {
		padding-inline: 10px !important;
		margin-inline: 0 !important;
	}
}
