/* WooCommerce Account Page Styles - Modern Sidebar Layout */

/* Fix for your HTML structure - only apply grid to account pages, not checkout/payment */
body.woocommerce-account .woocommerce {
	display: grid !important;
	grid-template-columns: 300px 1fr !important;
	gap: 2.5rem !important;
	align-items: start !important;
}

/* Exclude grid from checkout and order-pay pages */
body.woocommerce-checkout .woocommerce,
body.woocommerce-order-pay .woocommerce {
	display: block !important;
	grid-template-columns: none !important;
}

/* Remove clearfix pseudo-elements that break grid */
body.woocommerce-account .woocommerce::before,
body.woocommerce-account .woocommerce::after {
	display: none !important;
	content: none !important;
}

#update_all_subscriptions_payment_method_field {
	padding-left: 1em !important;
	padding-right: 1em !important;
}

/* Account Navigation - Sidebar */
.woocommerce-MyAccount-navigation {
	padding: 0 !important;
	position: sticky;
	top: 100px;
	color: #ffffff;
	background: rgba(255, 255, 255, 0.05);
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

.woocommerce-MyAccount-navigation ul {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
	display: flex !important;
	flex-direction: column !important;
}

.woocommerce-MyAccount-navigation ul::before {
	display: none;
}

.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link {
	margin: 0 !important;
	padding: 0 !important;
	border: none;
	background: none;
	display: block !important;
	line-height: 1;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	width: 100% !important;
}

.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link:last-child {
	border-bottom: none;
}

.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link.is-active {
	background: rgba(212, 175, 55, 0.15) !important;
	border-left: 3px solid #d4af37;
}

.woocommerce-MyAccount-navigation li:before,
.woocommerce-MyAccount-navigation li:after {
	display: none !important;
}

.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link a {
	margin: 0 !important;
	padding: 1.2rem 1.5rem !important;
	position: relative;
	text-transform: none !important;
	font-size: 15px !important;
	display: block !important;
	letter-spacing: 0.3px !important;
	font-weight: 500 !important;
	background: transparent !important;
	height: auto !important;
	line-height: 1.5 !important;
	text-align: left !important;
	transition: all 0.3s ease !important;
	border: none !important;
	outline: none;
	cursor: pointer;
	color: rgba(255, 255, 255, 0.8) !important;
	width: 100%;
}

.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link a:hover {
	background: rgba(255, 255, 255, 0.05) !important;
	color: #ffffff !important;
	padding-left: 1.75rem !important;
}

.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link:first-child a {
	margin-left: 0 !important;
}

.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link.is-active a {
	color: #d4af37 !important;
	font-weight: 600 !important;
}

.woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-navigation {
	position: sticky;
	margin-bottom: 0 !important;
	float: none !important;
	width: auto !important;
}

.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link:before {
	display: none !important;
}

/* Account Content - Main Area */
.woocommerce-MyAccount-content,
.woocommerce-account .woocommerce-MyAccount-content {
	float: none !important;
	width: auto !important;
	color: #ffffff;
	background: rgba(255, 255, 255, 0.03);
	border-radius: 12px;
	padding: 2.5rem !important;
	min-height: 500px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 {
	color: #ffffff;
	margin-bottom: 1.5rem;
}

.woocommerce-MyAccount-content a {
	border-bottom: dotted 2px rgba(255, 255, 255, 0.3);
	transition: all 0.2s ease 0s;
	color: #ffffff;
}

.woocommerce-MyAccount-content a:hover {
	text-decoration: none!important;
	border-bottom-color: rgba(255, 255, 255, 0.6);
	color: #ffffff;
}

/* Addresses */
.woocommerce-Address-title.title:after {
	position: relative;
	clear: both;
	display: block;
	margin: 0;
	padding: 0;
	width: auto;
	height: auto;
	background: none;
}

.woocommerce-account .addresses .title h3,
.addresses .title h3 {
	margin-top: 0;
	margin-bottom: 10px;
	float: left;
	font-size: 20px;
	color: #ffffff;
}

.addresses .title .edit,
.woocommerce-account .addresses .title .edit {
	border-bottom: dotted 2px rgba(255, 255, 255, 0.3);
	color: #ffffff;
}

.addresses .title .edit,
.woocommerce-account .addresses .title .edit {
	float: right;
	font-size: 16px;
}

/* Edit Account Form */
.woocommerce-EditAccountForm fieldset {
	margin-top: 40px;
}

.woocommerce-EditAccountForm fieldset legend {
	color: #ffffff;
}

.woocommerce-form-row span em {
	opacity: 0.65;
	padding-top: 10px;
	display: block;
	font-size: 16px;
	color: #ffffff;
}

/* Account Page Forms */
.woocommerce form .form-row label,
.woocommerce-page form .form-row label {
	display: block;
	width: 100%;
	color: #ffffff;
	font-weight: 600;
	margin-bottom: 10px;
}

.woocommerce-input-wrapper {
	display: block;
	width: 100%;
}

.woocommerce form .form-row {
	padding: 0;
	margin: 0 0 20px 0;
	float: none;
	width: 100%;
}

.woocommerce form .form-row .input-text,
.woocommerce form .form-row select {
	border: none;
	border-radius: 5px;
	width: 100%;
	height: 50px;
	margin-bottom: 0;
	padding: 0 20px;
	box-shadow: 0 2px 5px 0 rgba(26, 47, 51, 0.11);
	color: #ffffff;
	background: rgba(255, 255, 255, 0.1);
	opacity: 1;
	font-size: 17px;
	font-weight: 400;
}

.woocommerce form .form-row .input-text:focus,
.woocommerce form .form-row select:focus {
	outline: inherit;
	background: rgba(255, 255, 255, 0.15);
}

.woocommerce form .form-row .input-text::placeholder {
	color: rgba(255, 255, 255, 0.6);
}

.woocommerce form .form-row textarea.input-text,
.woocommerce-page form .form-row textarea.input-text {
	padding: 20px;
	height: auto;
	min-height: 120px;
	box-shadow: 0 5px 10px 0 rgba(26, 47, 51, 0.1);
	color: #ffffff;
	background: rgba(255, 255, 255, 0.1);
}

.woocommerce form .form-row textarea.input-text::placeholder {
	color: rgba(255, 255, 255, 0.6);
}

.woocommerce-privacy-policy-text {
	margin-bottom: 1.25rem;
	color: #ffffff;
	opacity: 0.8;
}

/* WooCommerce Messages */
.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
	padding: 26px;
	padding-right: 20%;
	margin: 0 0 30px 0;
	background: rgba(255, 255, 255, 0.05);
	color: #ffffff;
	border-top: none;
	position: relative;
}

.woocommerce-error:before,
.woocommerce-info:before,
.woocommerce-message:before {
	display: none;
}

.woocommerce-error li:before,
.woocommerce-info li:before,
.woocommerce-message li:before {
	display: none;
}

.woocommerce .woocommerce-error .button, 
.woocommerce .woocommerce-info .button, 
.woocommerce .woocommerce-message .button,
.woocommerce-page .woocommerce-error .button, 
.woocommerce-page .woocommerce-info .button, 
.woocommerce-page .woocommerce-message .button {
	position: absolute;
	top: 10px;
	right: 10px;
}

.woocommerce-error .button,
.woocommerce-info .button,
.woocommerce-message .button {
	margin-right: 0!important;
	margin-bottom: 0!important;
}

.woocommerce-error .showcoupon,
.woocommerce-info .showcoupon,
.woocommerce-message .showcoupon {
	border-bottom: dotted 2px rgba(255, 255, 255, 0.3);
	color: #ffffff;
}

/* Dark Mode Overrides for Account Pages */
.ui-dark .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link.is-active a {
	color: #eae5dc;
	opacity: 1;
}

/* Order Details and Thank You Pages */
.woocommerce-order,
.woocommerce-order-details,
.woocommerce-customer-details {
	color: #ffffff;
}

.woocommerce-order h2,
.woocommerce-order-details h2,
.woocommerce-customer-details h2,
.woocommerce-order-details__title,
.woocommerce-column__title {
	color: #ffffff;
	margin-bottom: 1.5rem;
}

.woocommerce-order p,
.woocommerce-order li,
.woocommerce-order td,
.woocommerce-order th,
.woocommerce-order address {
	color: #ffffff;
}

.woocommerce-order a {
	color: #d4af37;
	text-decoration: underline;
}

.woocommerce-order a:hover {
	color: #ffffff;
}

/* Thank You Notice */
.woocommerce-notice--success,
.woocommerce-thankyou-order-received {
	background: rgba(212, 175, 55, 0.2);
	border-left: 4px solid #d4af37;
	padding: 1rem 1.5rem;
	margin-bottom: 2rem;
	color: #ffffff;
	border-radius: 0.375rem;
}

/* Order Overview */
.woocommerce-order-overview,
.woocommerce-thankyou-order-details {
	list-style: none;
	padding: 0;
	margin: 2rem 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 1rem;
	background: rgba(255, 255, 255, 0.05);
	padding: 1.5rem;
	border-radius: 0.5rem;
}

.woocommerce-order-overview li {
	color: #ffffff;
	margin: 0;
	padding: 0;
}

.woocommerce-order-overview strong {
	color: #d4af37;
	font-weight: 600;
}

/* Order Details Tables */
.woocommerce-table--order-details,
.woocommerce-table--custom-fields {
	width: 100%;
	margin-bottom: 2rem;
	border-collapse: separate;
	border-spacing: 0;
	background: rgba(255, 255, 255, 0.03);
	border-radius: 0.5rem;
	overflow: hidden;
}

.woocommerce-table--order-details thead th,
.woocommerce-table--custom-fields thead th {
	background: rgba(255, 255, 255, 0.1);
	color: #ffffff;
	font-weight: 600;
	padding: 1rem;
	text-align: left;
	border-bottom: 2px solid rgba(255, 255, 255, 0.1);
}

.woocommerce-table--order-details tbody td,
.woocommerce-table--order-details tfoot td,
.woocommerce-table--order-details tfoot th,
.woocommerce-table--custom-fields tbody td {
	padding: 1rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	color: #ffffff;
}

.woocommerce-table--order-details tfoot th {
	text-align: left;
	font-weight: 600;
}

.woocommerce-table--order-details tfoot tr:last-child td,
.woocommerce-table--order-details tfoot tr:last-child th {
	border-bottom: none;
	font-weight: 700;
	font-size: 1.1rem;
	color: #d4af37;
}

/* Section Title in Custom Fields */
.thwcfe-section-title {
	background: rgba(212, 175, 55, 0.2) !important;
	color: #d4af37 !important;
	font-weight: 600;
	padding: 0.75rem 1rem !important;
}

/* Customer Details Address */
.woocommerce-customer-details address {
	background: rgba(255, 255, 255, 0.05);
	padding: 1.5rem;
	border-radius: 0.5rem;
	border-left: 3px solid #d4af37;
	line-height: 1.8;
}

.woocommerce-customer-details--phone,
.woocommerce-customer-details--email {
	margin-top: 1rem;
	color: #d4af37;
}

/* Product Quantity Badge */
.product-quantity {
	color: #d4af37;
	font-weight: 600;
}

/* Mobile Account Navigation */
@media (max-width: 990px) {
	.woocommerce-page .woocommerce,
	body.woocommerce-account .woocommerce,
	.woocommerce-account .woocommerce {
		grid-template-columns: 1fr !important;
		gap: 1.5rem !important;
	}
	
	.woocommerce-MyAccount-navigation {
		position: static !important;
		border-radius: 8px;
	}
	
	.woocommerce-MyAccount-navigation ul {
		display: flex !important;
		flex-direction: row !important;
		overflow-x: auto !important;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: thin;
	}
	
	.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link {
		border-bottom: none !important;
		border-right: 1px solid rgba(255, 255, 255, 0.08) !important;
		flex-shrink: 0 !important;
		width: auto !important;
	}
	
	.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link:last-child {
		border-right: none !important;
	}
	
	.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link.is-active {
		border-left: none !important;
		border-bottom: 3px solid #d4af37 !important;
	}
	
	.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link a {
		white-space: nowrap !important;
		padding: 1rem !important;
		font-size: 14px !important;
	}
	
	.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link a:hover {
		padding-left: 1rem !important;
	}
	
	.woocommerce-MyAccount-content {
		padding: 1.5rem !important;
	}
	
	.woocommerce-error, 
	.woocommerce-info, 
	.woocommerce-message {
		padding: 22px;
	}
	
	.woocommerce .woocommerce-error .button, 
	.woocommerce .woocommerce-info .button, 
	.woocommerce .woocommerce-message .button, 
	.woocommerce-page .woocommerce-error .button, 
	.woocommerce-page .woocommerce-info .button, 
	.woocommerce-page .woocommerce-message .button {
		position: relative;
		top: 0;
		right: auto;
		left: 0;
		margin-bottom: 10px!important;
		width: 100%;
	}
	
	.woocommerce-order-overview,
	.woocommerce-thankyou-order-details {
		grid-template-columns: 1fr;
	}
	
	.woocommerce-table--order-details,
	.woocommerce-table--custom-fields {
		font-size: 0.9rem;
	}
	
	.woocommerce-table--order-details thead th,
	.woocommerce-table--custom-fields thead th,
	.woocommerce-table--order-details tbody td,
	.woocommerce-table--custom-fields tbody td {
		padding: 0.75rem 0.5rem;
	}
}
