/* Finclix Client Portal — My Account redesign (sidebar portal). Loaded on account pages only. */

body.fcp-portal-ui {
	--fcp-green: var(--theme-color1, #144443);
	--fcp-green-dark: var(--theme-color2, #133b3a);
	--fcp-lime: var(--theme-color3, #c8f169);
	--fcp-ink: var(--headings-color, #0b3130);
	--fcp-text: #4b5563;
	--fcp-muted: #6b7280;
	--fcp-line: #e6ebea;
	--fcp-surface: #f5f8f7;
	--fcp-card: #ffffff;
	--fcp-radius: 16px;
	--fcp-shadow: 0 1px 2px rgba(16, 40, 39, 0.04), 0 8px 24px -12px rgba(16, 40, 39, 0.12);
}

/* Slim header: hide the theme's tall title banner, tighten the page wrapper. */
body.fcp-portal-ui .tm-page-title-elementor {
	display: none;
}
body.fcp-portal-ui .main-content-section-wrapper {
	padding-top: 32px;
	padding-bottom: 72px;
	background: var(--fcp-surface);
}

/* ------------------------------------------------------------------ Layout */
.fcp-acct {
	display: grid;
	grid-template-columns: 280px minmax(0, 1fr);
	gap: 28px;
	align-items: start;
	max-width: 1240px;
	margin: 0 auto;
	color: var(--fcp-text);
}
.fcp-acct__side {
	position: sticky;
	top: 110px;
}
.fcp-acct__main {
	min-width: 0;
}
.fcp-acct__head {
	display: flex;
	gap: 16px;
	align-items: flex-end;
	justify-content: space-between;
	margin-bottom: 22px;
}
.fcp-acct__eyebrow {
	margin: 0 0 4px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--fcp-green);
}
.fcp-acct__title {
	margin: 0;
	font-size: clamp(26px, 3vw, 34px);
	line-height: 1.15;
	color: var(--fcp-ink);
}
a.fcp-acct__cta {
	display: inline-flex;
	gap: 8px;
	align-items: center;
	flex: 0 0 auto;
	padding: 11px 18px;
	border-radius: 999px;
	background: var(--fcp-green);
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	transition: background-color 0.2s ease;
}
a.fcp-acct__cta:hover {
	background: var(--fcp-green-dark);
	color: var(--fcp-lime);
}

/* ------------------------------------------------------------------ Sidebar */
.fcp-side {
	display: flex;
	flex-direction: column;
	gap: 18px;
	padding: 22px 16px 18px;
	border-radius: 20px;
	background:
		radial-gradient(circle at 100% 0, rgba(200, 241, 105, 0.16), transparent 45%),
		linear-gradient(170deg, var(--fcp-green), var(--fcp-green-dark));
	color: rgba(255, 255, 255, 0.78);
	box-shadow: var(--fcp-shadow);
}
.fcp-side__profile {
	display: flex;
	gap: 12px;
	align-items: center;
	padding: 0 6px 18px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}
.fcp-side__avatar {
	flex: 0 0 56px;
	border-radius: 50%;
	box-shadow: 0 0 0 3px rgba(200, 241, 105, 0.55);
}
.fcp-side__avatar img {
	display: block;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	object-fit: cover;
}
.fcp-side__who {
	display: flex;
	flex-direction: column;
	min-width: 0;
	line-height: 1.35;
}
.fcp-side__who strong {
	overflow: hidden;
	color: #fff;
	font-size: 16px;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.fcp-side__who span {
	overflow: hidden;
	font-size: 12.5px;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.fcp-side .woocommerce-MyAccount-navigation {
	float: none;
	width: auto;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
}
.fcp-side__nav ul {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.fcp-side__nav li {
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
}
.fcp-side__nav li a,
.fcp-side__logout {
	display: flex;
	gap: 12px;
	align-items: center;
	padding: 11px 12px;
	border-radius: 12px;
	color: rgba(255, 255, 255, 0.8);
	font-size: 15px;
	font-weight: 500;
	text-decoration: none;
	transition: background-color 0.15s ease, color 0.15s ease;
}
.fcp-side__nav li a:hover,
.fcp-side__logout:hover {
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
}
.fcp-side__nav li.is-active a {
	background: var(--fcp-lime);
	color: var(--fcp-green-dark);
	font-weight: 600;
}
.fcp-side__nav .fcp-ico {
	flex: 0 0 20px;
}
.fcp-side__logout {
	margin-top: 10px;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 0 0 12px 12px;
	padding-top: 16px;
}
.fcp-side__help {
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: 14px;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.06);
	font-size: 13px;
	line-height: 1.5;
}
.fcp-side__help strong {
	color: #fff;
}
.fcp-side__help a {
	color: var(--fcp-lime);
}

/* ------------------------------------------------------------------ Content cards */
.fcp-acct__content {
	float: none;
	width: auto;
}
.fcp-acct__content > .fcp-portal,
.fcp-acct__content > form,
.fcp-acct__content > .woocommerce-Addresses,
.fcp-acct__content > .woocommerce-order-details,
.fcp-acct__content > .woocommerce-customer-details,
.fcp-acct__content > .woocommerce-orders-table,
.fcp-acct__content > .woocommerce-MyAccount-orders,
.fcp-acct__content > p,
.fcp-acct__content > .woocommerce-pagination {
	max-width: none;
}
.fcp-acct__content .fcp-portal.fcp-account,
.fcp-acct__content .woocommerce-EditAccountForm,
.fcp-acct__content > .woocommerce-orders-table,
.fcp-acct__content .woocommerce-address-fields,
.fcp-acct__content .woocommerce-order-details,
.fcp-acct__content .woocommerce-customer-details,
.fcp-acct__content > .woocommerce-info,
.fcp-acct__content > p:not(:empty) {
	padding: 26px;
	border: 1px solid var(--fcp-line);
	border-radius: var(--fcp-radius);
	background: var(--fcp-card);
	box-shadow: var(--fcp-shadow);
}
.fcp-acct__content > p:not(:empty) + p:not(:empty) {
	margin-top: 16px;
}
.fcp-acct__content .woocommerce-order-details,
.fcp-acct__content .woocommerce-customer-details {
	margin-bottom: 22px;
}
.fcp-acct__content h2,
.fcp-acct__content h3 {
	color: var(--fcp-ink);
}

/* Notices */
.fcp-acct__content .woocommerce-message,
.fcp-acct__content .woocommerce-info,
.fcp-acct__content .woocommerce-error,
.fcp-auth__card .woocommerce-message,
.fcp-auth__card .woocommerce-info,
.fcp-auth__card .woocommerce-error {
	margin: 0 0 18px;
	padding: 14px 18px;
	border: 1px solid var(--fcp-line);
	border-left-width: 1px;
	border-radius: 12px;
	background: #fff;
	color: var(--fcp-text);
	font-size: 14.5px;
	box-shadow: none;
}
.fcp-acct__content .woocommerce-message,
.fcp-auth__card .woocommerce-message {
	border-color: #abefc6;
	background: #ecfdf3;
	color: #05603a;
}
.fcp-acct__content .woocommerce-error,
.fcp-auth__card .woocommerce-error {
	border-color: #fecdca;
	background: #fef3f2;
	color: #912018;
}
.fcp-acct__content .woocommerce-message::before,
.fcp-acct__content .woocommerce-info::before,
.fcp-acct__content .woocommerce-error::before,
.fcp-auth__card .woocommerce-message::before,
.fcp-auth__card .woocommerce-info::before,
.fcp-auth__card .woocommerce-error::before {
	display: none;
}

/* Tables */
.fcp-acct__content table.shop_table {
	margin: 0;
	border: 0;
	border-collapse: separate;
	border-spacing: 0;
}
.fcp-acct__content table.shop_table th,
.fcp-acct__content table.shop_table td {
	padding: 14px 12px;
	border: 0;
	border-bottom: 1px solid var(--fcp-line);
	background: none;
	text-align: left;
	vertical-align: middle;
}
.fcp-acct__content table.shop_table thead th {
	padding-top: 0;
	color: var(--fcp-muted);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}
.fcp-acct__content table.shop_table tbody tr:last-child > * {
	border-bottom: 0;
}
.fcp-acct__content table.shop_table tbody tr:hover > * {
	background: #fafcfb;
}
.fcp-acct__content .fcp-table__actions,
.fcp-acct__content .woocommerce-orders-table__cell-order-actions {
	text-align: right;
}

/* Buttons inside content */
.fcp-acct__content a.button,
.fcp-acct__content button.button,
.fcp-acct__content .woocommerce-Button,
.fcp-acct__content input[type="submit"],
.fcp-acct__content a.fcp-btn,
.fcp-acct__content .woocommerce-button.button,
.woocommerce .fcp-acct__content .fcp-table .fcp-table__actions a.button.fcp-btn-sm {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 9px 16px;
	border: 0;
	border-radius: 999px;
	background-color: var(--fcp-green);
	color: #fff;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.02em;
	line-height: 1.4;
	text-transform: none;
	text-decoration: none;
	overflow: hidden;
}
.fcp-acct__content a.button::before,
.fcp-acct__content button.button::before,
.fcp-acct__content .woocommerce-Button::before {
	display: none;
}
.fcp-acct__content a.button:hover,
.fcp-acct__content button.button:hover,
.fcp-acct__content .woocommerce-Button:hover,
.fcp-acct__content a.fcp-btn:hover {
	background-color: var(--fcp-green-dark);
	color: var(--fcp-lime);
}
.fcp-acct__content a.button.view,
.woocommerce .fcp-acct__content .fcp-table .fcp-table__actions a.button.view.fcp-btn-sm {
	border: 1px solid var(--fcp-line);
	background-color: #fff;
	color: var(--fcp-ink);
}
.fcp-acct__content a.button.view:hover,
.woocommerce .fcp-acct__content .fcp-table .fcp-table__actions a.button.view.fcp-btn-sm:hover {
	border-color: var(--fcp-green);
	background-color: #fff;
	color: var(--fcp-green);
}

/* Forms inside content */
.fcp-acct__content .woocommerce-EditAccountForm label,
.fcp-acct__content .woocommerce-address-fields label {
	color: var(--fcp-ink);
	font-size: 14px;
	font-weight: 600;
}
.fcp-acct__content .input-text,
.fcp-acct__content select,
.fcp-acct__content textarea {
	border: 1px solid #d8dfde;
	border-radius: 10px;
	background: #fff;
}
.fcp-acct__content .input-text:focus,
.fcp-acct__content textarea:focus {
	border-color: var(--fcp-green);
	outline: 0;
	box-shadow: 0 0 0 3px rgba(20, 68, 67, 0.12);
}
.fcp-acct__content fieldset {
	margin: 24px 0 8px;
	padding: 20px 0 0;
	border: 0;
	border-top: 1px solid var(--fcp-line);
}
.fcp-acct__content fieldset legend {
	padding: 0 0 6px;
	color: var(--fcp-ink);
	font-weight: 600;
}

/* Addresses */
.fcp-acct__content .woocommerce-Addresses {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 18px;
	margin: 0;
}
.fcp-acct__content .woocommerce-Addresses::before,
.fcp-acct__content .woocommerce-Addresses::after {
	display: none;
}
.fcp-acct__content .woocommerce-Addresses .woocommerce-Address {
	float: none;
	width: auto;
	max-width: none;
	margin: 0;
	padding: 22px;
	border: 1px solid var(--fcp-line);
	border-radius: var(--fcp-radius);
	background: #fff;
	box-shadow: var(--fcp-shadow);
}
.fcp-acct__content .woocommerce-Address-title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 10px;
}
.fcp-acct__content .woocommerce-Address-title h2 {
	margin: 0;
	font-size: 18px;
}
.fcp-acct__content .woocommerce-Address-title a.edit {
	font-size: 13px;
	font-weight: 600;
}
.fcp-acct__content .woocommerce-Address address {
	font-style: normal;
	line-height: 1.7;
}

/* ------------------------------------------------------------------ Dashboard */
.fcp-dash__welcome {
	margin-bottom: 20px;
	padding: 26px 28px;
	border-radius: var(--fcp-radius);
	background:
		radial-gradient(circle at 92% 20%, rgba(200, 241, 105, 0.35), transparent 40%),
		var(--fcp-card);
	border: 1px solid var(--fcp-line);
	box-shadow: var(--fcp-shadow);
}
.fcp-dash__welcome h2 {
	margin: 0 0 6px;
	font-size: 24px;
}
.fcp-dash__welcome p {
	margin: 0;
}
.fcp-dash__stats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	margin-bottom: 20px;
}
a.fcp-stat {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 20px;
	border: 1px solid var(--fcp-line);
	border-radius: var(--fcp-radius);
	background: var(--fcp-card);
	box-shadow: var(--fcp-shadow);
	color: var(--fcp-text);
	text-decoration: none;
	transition: transform 0.2s ease, border-color 0.2s ease;
}
a.fcp-stat:hover {
	border-color: rgba(20, 68, 67, 0.35);
	transform: translateY(-2px);
	color: var(--fcp-text);
}
.fcp-stat__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	margin-bottom: 8px;
	border-radius: 12px;
	background: rgba(200, 241, 105, 0.4);
	color: var(--fcp-green);
}
.fcp-stat--alert .fcp-stat__icon {
	background: #fef0c7;
	color: #b54708;
}
.fcp-stat__label {
	color: var(--fcp-muted);
	font-size: 13px;
	font-weight: 500;
}
.fcp-stat__value {
	color: var(--fcp-ink);
	font-size: 28px;
	font-weight: 700;
	line-height: 1.2;
}
.fcp-stat__value--text {
	font-size: 20px;
	line-height: 1.6;
}
.fcp-stat__link {
	margin-top: 6px;
	color: var(--fcp-green);
	font-size: 13px;
	font-weight: 600;
}
.fcp-dash__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr);
	gap: 16px;
}
.fcp-panel {
	padding: 22px;
	border: 1px solid var(--fcp-line);
	border-radius: var(--fcp-radius);
	background: var(--fcp-card);
	box-shadow: var(--fcp-shadow);
}
.fcp-panel__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 12px;
}
.fcp-panel__head h3 {
	margin: 0;
	font-size: 18px;
}
.fcp-panel__head a {
	font-size: 13px;
	font-weight: 600;
}
.fcp-list,
.fcp-actions-list {
	margin: 0;
	padding: 0;
	list-style: none;
}
.fcp-list li {
	margin: 0;
	border-bottom: 1px solid var(--fcp-line);
}
.fcp-list li:last-child {
	border-bottom: 0;
}
.fcp-list a {
	display: flex;
	gap: 12px;
	align-items: center;
	justify-content: space-between;
	padding: 12px 4px;
	color: inherit;
	text-decoration: none;
}
.fcp-list a:hover strong {
	color: var(--fcp-green);
}
.fcp-list__main {
	display: flex;
	flex-direction: column;
	min-width: 0;
}
.fcp-list__main strong {
	color: var(--fcp-ink);
	font-size: 15px;
}
.fcp-list__main small {
	color: var(--fcp-muted);
	font-size: 12.5px;
}
.fcp-actions-list li {
	margin: 0 0 8px;
}
.fcp-actions-list a {
	display: flex;
	gap: 12px;
	align-items: center;
	padding: 12px 14px;
	border: 1px solid var(--fcp-line);
	border-radius: 12px;
	color: var(--fcp-ink);
	font-size: 14.5px;
	font-weight: 500;
	text-decoration: none;
	transition: border-color 0.15s ease, background-color 0.15s ease;
}
.fcp-actions-list a:hover {
	border-color: rgba(20, 68, 67, 0.35);
	background: #fafcfb;
	color: var(--fcp-green);
}
.fcp-actions-list .fcp-ico {
	color: var(--fcp-green);
}
.fcp-empty {
	padding: 18px;
	border-radius: 12px;
	background: var(--fcp-surface);
}
.fcp-empty p {
	margin: 0 0 14px;
}

/* ------------------------------------------------------------------ Login / register */
body.fcp-portal-ui--out .main-content-section-wrapper {
	padding-top: 48px;
}
.fcp-auth {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	max-width: 1040px;
	margin: 0 auto;
	overflow: hidden;
	border: 1px solid var(--fcp-line);
	border-radius: 24px;
	background: #fff;
	box-shadow: 0 24px 60px -30px rgba(16, 40, 39, 0.35);
}
.fcp-auth__brand {
	padding: 44px 40px;
	background:
		radial-gradient(circle at 90% 8%, rgba(200, 241, 105, 0.22), transparent 45%),
		linear-gradient(165deg, var(--fcp-green), var(--fcp-green-dark));
	color: rgba(255, 255, 255, 0.8);
}
.fcp-auth__eyebrow {
	margin: 0 0 10px;
	color: var(--fcp-lime);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}
.fcp-auth__brand h2 {
	margin: 0 0 24px;
	color: #fff;
	font-size: clamp(26px, 3vw, 32px);
	line-height: 1.2;
}
.fcp-auth__brand ul {
	margin: 0 0 28px;
	padding: 0;
	list-style: none;
}
.fcp-auth__brand li {
	position: relative;
	margin: 0 0 14px;
	padding-left: 32px;
	line-height: 1.5;
}
.fcp-auth__brand li::before {
	content: "";
	position: absolute;
	top: 1px;
	left: 0;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: var(--fcp-lime) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='%23133b3a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 13px no-repeat;
}
.fcp-auth__secure {
	display: flex;
	gap: 8px;
	align-items: center;
	margin: 0;
	padding: 12px 14px;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.08);
	font-size: 13.5px;
}
.fcp-auth__card {
	padding: 36px 40px 32px;
}
.fcp-auth__tabs {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4px;
	margin-bottom: 26px;
	padding: 4px;
	border-radius: 999px;
	background: var(--fcp-surface);
}
.fcp-auth__tab {
	padding: 10px 14px;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: var(--fcp-muted);
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
}
.fcp-auth__tab[aria-selected="true"] {
	background: #fff;
	color: var(--fcp-green);
	box-shadow: 0 1px 3px rgba(16, 40, 39, 0.12);
}
.fcp-auth__card .fcp-auth__pane {
	float: none;
	width: auto;
	max-width: none;
	padding: 0;
}
.fcp-auth__card.is-login .fcp-auth__pane--register,
.fcp-auth__card.is-register .fcp-auth__pane--login {
	display: none;
}
.fcp-auth__title {
	margin: 0 0 4px;
	color: var(--fcp-ink);
	font-size: 26px;
}
.fcp-auth__sub {
	margin: 0 0 22px;
	color: var(--fcp-muted);
}
.fcp-auth__card form.login,
.fcp-auth__card form.register {
	margin: 0;
	padding: 0;
	border: 0;
}
.fcp-auth__card label {
	color: var(--fcp-ink);
	font-size: 14px;
	font-weight: 600;
}
.fcp-auth__card .input-text,
.fcp-auth__card select {
	width: 100%;
	border: 1px solid #d8dfde;
	border-radius: 10px;
	background: #fff;
}
.fcp-auth__card .input-text:focus {
	border-color: var(--fcp-green);
	outline: 0;
	box-shadow: 0 0 0 3px rgba(20, 68, 67, 0.12);
}
.fcp-auth__row {
	display: flex;
	gap: 12px;
	align-items: center;
	justify-content: space-between;
	margin: 4px 0 18px;
}
.fcp-auth__row label {
	font-weight: 500;
}
.fcp-auth__lost {
	font-size: 14px;
	font-weight: 600;
}
.woocommerce-account .fcp-auth__card button.fcp-auth__submit {
	width: 100%;
	padding: 14px 20px;
	border: 0;
	border-radius: 12px;
	background-color: var(--fcp-green);
	color: #fff;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0.02em;
	text-transform: none;
	overflow: hidden;
}
.woocommerce-account .fcp-auth__card button.fcp-auth__submit::before {
	display: none;
}
.woocommerce-account .fcp-auth__card button.fcp-auth__submit:hover {
	background-color: var(--fcp-green-dark);
	color: var(--fcp-lime);
}
.fcp-auth__switch {
	margin: 18px 0 0;
	color: var(--fcp-muted);
	font-size: 14px;
	text-align: center;
}
.fcp-auth__switch a {
	font-weight: 600;
}
.fcp-auth__hint {
	display: block;
	margin-top: 4px;
	color: var(--fcp-muted);
	font-size: 12px;
}
.fcp-auth .woocommerce-privacy-policy-text {
	font-size: 13px;
}

/* Lost / reset password pages (rendered without the portal layout). */
body.fcp-portal-ui--out .woocommerce-ResetPassword {
	max-width: 520px;
	margin: 0 auto;
	padding: 34px 36px;
	border: 1px solid var(--fcp-line);
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 24px 60px -30px rgba(16, 40, 39, 0.35);
}
body.fcp-portal-ui--out .woocommerce-ResetPassword .form-row-first,
body.fcp-portal-ui--out .woocommerce-ResetPassword .form-row-last {
	float: none;
	width: 100%;
}
body.fcp-portal-ui--out .woocommerce-ResetPassword .input-text {
	width: 100%;
	border-radius: 10px;
}
body.fcp-portal-ui--out .woocommerce-ResetPassword button.button {
	width: 100%;
	border-radius: 12px;
	background-color: var(--fcp-green);
	color: #fff;
}
body.fcp-portal-ui--out .woocommerce-ResetPassword button.button::before {
	display: none;
}

/* ------------------------------------------------------------------ Responsive */
@media (max-width: 1100px) {
	.fcp-dash__grid {
		grid-template-columns: 1fr;
	}
}
@media (max-width: 991px) {
	.fcp-acct {
		grid-template-columns: 1fr;
		gap: 18px;
	}
	.fcp-acct__side {
		position: static;
	}
	.fcp-side {
		gap: 14px;
		padding: 16px;
	}
	.fcp-side__profile {
		padding-bottom: 12px;
	}
	.fcp-side__nav {
		display: flex;
		gap: 4px;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}
	.fcp-side__nav::-webkit-scrollbar {
		display: none;
	}
	.fcp-side__nav ul {
		flex-direction: row;
		gap: 4px;
	}
	.fcp-side__nav li a,
	.fcp-side__logout {
		padding: 9px 12px;
		font-size: 14px;
		white-space: nowrap;
	}
	.fcp-side__logout {
		margin: 0;
		padding-top: 9px;
		border-top: 0;
		border-radius: 12px;
	}
	.fcp-side__help {
		display: none;
	}
	.fcp-dash__stats {
		grid-template-columns: 1fr;
	}
	.fcp-auth {
		grid-template-columns: 1fr;
	}
	.fcp-auth__brand {
		padding: 28px 24px;
	}
	.fcp-auth__brand ul {
		margin-bottom: 18px;
	}
}
@media (max-width: 600px) {
	.fcp-acct__head {
		flex-direction: column;
		align-items: flex-start;
	}
	.fcp-acct__content .fcp-portal.fcp-account,
	.fcp-acct__content .woocommerce-EditAccountForm,
	.fcp-acct__content .woocommerce-address-fields,
	.fcp-acct__content .woocommerce-order-details,
	.fcp-acct__content .woocommerce-customer-details,
	.fcp-auth__card {
		padding: 20px 18px;
	}
	.fcp-auth__brand li:nth-child(n+3) {
		display: none;
	}
}

/* WooCommerce "show password" toggle (the theme leaves it as a stray grey bar). */
body.fcp-portal-ui .password-input {
	position: relative;
	display: block;
}
body.fcp-portal-ui .password-input .input-text {
	padding-right: 46px;
}
body.fcp-portal-ui .show-password-input {
	position: absolute;
	top: 50%;
	right: 10px;
	width: 30px;
	height: 30px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 8px;
	background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / 20px no-repeat;
	font-size: 0;
	cursor: pointer;
	transform: translateY(-50%);
}
body.fcp-portal-ui .show-password-input::before,
body.fcp-portal-ui .show-password-input::after {
	display: none;
}
body.fcp-portal-ui .show-password-input.display-password {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23144443' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3l18 18M10.6 5.1A10 10 0 0 1 12 5c6.4 0 10 7 10 7a17 17 0 0 1-3.2 4.1M6.6 6.6A17 17 0 0 0 2 12s3.6 7 10 7a9.7 9.7 0 0 0 5.4-1.6M9.9 9.9a3 3 0 0 0 4.2 4.2'/%3E%3C/svg%3E");
}
body.fcp-portal-ui .show-password-input:focus-visible {
	outline: 2px solid var(--fcp-green);
}

/* Grid children must be allowed to shrink, so the menu strip scrolls inside its box
   and notices wrap instead of being clipped on phones. */
.fcp-acct > *,
.fcp-side,
.fcp-side__nav {
	min-width: 0;
	max-width: 100%;
}
.fcp-acct__content .woocommerce-message,
.fcp-acct__content .woocommerce-info,
.fcp-acct__content .woocommerce-error,
.fcp-acct__content > p {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 14px;
	align-items: center;
	justify-content: space-between;
	white-space: normal;
	overflow-wrap: anywhere;
}
.fcp-acct__content .woocommerce-message .button,
.fcp-acct__content .woocommerce-info .button {
	float: none;
	order: 2;
	margin: 0;
}

/* Theme paints the active menu row white with !important; keep the sidebar row transparent. */
.fcp-side .woocommerce-MyAccount-navigation li,
.fcp-side .woocommerce-MyAccount-navigation li.is-active {
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

/* ---------- Sticky sidebar: pinned under the theme's fixed header, never taller than the screen ---------- */
@media (min-width: 992px) {
	.fcp-acct__side {
		position: sticky;
		top: var(--fcp-sticky-top, 148px);
		align-self: start;
	}
	.fcp-side {
		max-height: calc(100vh - var(--fcp-sticky-top, 148px) - 20px);
		overflow-y: auto;
		overscroll-behavior: contain;
		scrollbar-width: thin;
		scrollbar-color: rgba(255, 255, 255, 0.25) transparent;
	}
	.fcp-side__profile {
		padding-bottom: 14px;
	}
	.fcp-side__nav li a,
	.fcp-side__logout {
		padding: 9px 12px;
	}
	.fcp-side__logout {
		margin-top: 6px;
		padding-top: 12px;
	}
}
@media (min-width: 992px) and (max-height: 820px) {
	.fcp-side__help {
		display: none;
	}
}

/* The theme sets body { overflow-x: hidden }, which turns <body> into a non-scrolling scroll
   container and silently disables position: sticky. "clip" hides overflow the same way
   without creating a scroll container. */
body.fcp-portal-ui {
	overflow-x: clip !important;
	overflow-y: visible !important;
}
