.gyc-member-auth,
.gyc-member-profile {
	--gyc-member-gold: #f8bf5a;
	--gyc-member-dark: #20364d;
	--gyc-member-text: #1f2933;
	--gyc-member-muted: #667085;
	--gyc-member-border: #e4e7ec;
	box-sizing: border-box;
	width: min(100%, 920px);
	margin: 32px auto;
	color: var(--gyc-member-text);
	font-family: "Alice", Georgia, serif;
}

.gyc-member-auth *,
.gyc-member-profile * {
	box-sizing: border-box;
}

.gyc-member-auth__card,
.gyc-member-profile__card {
	padding: 28px;
	background: #ffffff;
	border: 1px solid var(--gyc-member-border);
	border-radius: 8px;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.12);
}

.gyc-member-brand {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 0 22px;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--gyc-member-border);
	font-weight: 700;
	font-size: 18px;
	line-height: 1.2;
	color: var(--gyc-member-dark);
	font-family:"Trebuchet MS", sans-serif !important;
}

.gyc-member-brand__logo {
	width: 64px;
	height: 64px;
	flex: 0 0 64px;
	object-fit: contain;
	border-radius: 50%;
	background: #ffffff;
}

.gyc-member-auth h2,
.gyc-member-profile h2 {
	margin: 0 0 8px;
	font-size: 30px;
	line-height: 1.2;
	letter-spacing: 0;
	color: var(--gyc-member-dark);
	font-family: var(--gyc-font-nav) !important;
}

.gyc-member-auth__copy {
	margin: 0 0 20px;
	font-family: var(--gyc-font-nav) !important;
}

.gyc-member-auth__copy p,
.gyc-member-muted {
	margin: 0 0 16px;
	color: var(--gyc-member-muted);
	font-size: 16px;
	line-height: 1.55;
}

.gyc-member-form {
	display: grid;
	gap: 13px;
	max-width: 460px;
}

.gyc-member-form label {
	font-family: "Trebuchet MS", sans-serif;
	font-weight: 700;
	color: var(--gyc-member-dark);
}

.gyc-member-form input {
	width: 100%;
	min-height: 48px;
	padding: 11px 13px;
	border: 1px solid #cfd6df;
	border-radius: 6px;
	font: 16px/1.4 "Trebuchet MS", Arial, sans-serif;
	background: #ffffff;
	color: #111827;
}

.gyc-member-form input:focus {
	outline: 2px solid var(--gyc-member-gold);
	outline-offset: 2px;
	border-color: var(--gyc-member-dark);
}

.gyc-member-auth__actions {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 4px;
}

.gyc-member-button {
	appearance: none;
	-webkit-appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 132px;
	min-height: 44px;
	padding: 10px 18px;
	border: 0 !important;
	border-radius: 6px;
	background: var(--gyc-member-gold) !important;
	box-shadow: none !important;
	color: var(--gyc-member-dark) !important;
	font: 700 15px/1.2 "Trebuchet MS", Arial, sans-serif;
	letter-spacing: 0;
	text-align: center;
	text-decoration: none !important;
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease;
}

.gyc-member-button:hover,
.gyc-member-button:focus {
	background: var(--gyc-member-dark) !important;
	color: #ffffff !important;
}

.gyc-member-button--secondary {
	background: #eef2f6 !important;
	color: var(--gyc-member-dark) !important;
}

.gyc-member-button--secondary:hover,
.gyc-member-button--secondary:focus {
	background: var(--gyc-member-dark) !important;
	color: #ffffff !important;
}

.gyc-member-notice {
	margin: 0 0 16px;
	padding: 12px 14px;
	border-radius: 6px;
	font: 700 14px/1.4 "Trebuchet MS", Arial, sans-serif;
}

.gyc-member-notice--error {
	border: 1px solid #fecaca;
	background: #fef2f2;
	color: #991b1b;
}

.gyc-member-profile__card {
	padding: 28px;
	background: #ffffff;
	border: 1px solid var(--gyc-member-border);
	border-radius: 8px;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.12);
}

.gyc-member-profile__summary {
	display: grid;
	grid-template-columns: 132px minmax(0, 1fr) minmax(220px, 0.65fr);
	gap: 22px;
	align-items: center;
	margin: 0 0 24px;
	padding: 20px;
	border: 1px solid var(--gyc-member-border);
	border-radius: 8px;
	background: #fff7e8;
}

.gyc-member-profile__avatar {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 132px;
	height: 132px;
	overflow: hidden;
}

.gyc-member-profile__image,
.gyc-member-profile__placeholder {
	width: 132px;
	height: 132px;
	border-radius: 8px;
	border: 1px solid #d1d5db;
	background: #ffffff;
}

.gyc-member-profile__image {
	display: block;
	object-fit: cover;
}

.gyc-member-profile__fallback[hidden],
.gyc-member-profile__image[hidden] {
	display: none !important;
}

.gyc-member-profile__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, #fffdf7, #eef2f6);
	box-shadow: inset 0 0 0 4px #ffffff;
}

.gyc-member-profile__placeholder-initials {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 74px;
	height: 74px;
	border-radius: 50%;
	background: var(--gyc-member-dark);
	color: var(--gyc-member-gold);
	font: 800 28px/1 "Trebuchet MS", Arial, sans-serif;
	letter-spacing: 0;
}

.gyc-member-profile__identity {
	min-width: 0;
}

.gyc-member-profile__code {
	margin: 0 0 12px;
	color: var(--gyc-member-muted);
	font-weight: 700;
	overflow-wrap: anywhere;
}

.gyc-member-profile__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.gyc-member-profile__badges span {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 6px 10px;
	border-radius: 6px;
	background: var(--gyc-member-dark);
	color: #ffffff;
	font: 700 13px/1.2 "Trebuchet MS", Arial, sans-serif;
	letter-spacing: 0;
}

.gyc-member-profile__badges span:nth-child(2) {
	background: var(--gyc-member-gold);
	color: var(--gyc-member-dark);
}

.gyc-member-profile__meta {
	display: grid;
	gap: 10px;
	min-width: 0;
}

.gyc-member-profile__meta div {
	padding: 10px 12px;
	border: 1px solid #ecd8b4;
	border-radius: 8px;
	background: #ffffff;
}

.gyc-member-profile__meta span {
	display: block;
	margin: 0 0 3px;
	font: 800 12px/1.2 "Trebuchet MS", Arial, sans-serif;
	text-transform: uppercase;
	letter-spacing: 0;
	color: var(--gyc-member-muted);
}

.gyc-member-profile__meta strong {
	display: block;
	color: var(--gyc-member-dark);
	font: 700 14px/1.35 "Trebuchet MS", Arial, sans-serif;
	overflow-wrap: anywhere;
}

.gyc-member-profile__content {
	display: grid;
	gap: 22px;
}

.gyc-member-profile__section {
	padding: 0 0 2px;
}

.gyc-member-profile__section-title {
	margin: 0 0 12px;
	padding: 2px 0 2px 12px;
	border-left: 4px solid var(--gyc-member-gold);
	font: 700 18px/1.25 "Alice", Georgia, serif;
	letter-spacing: 0;
	color: var(--gyc-member-dark);
}

.gyc-member-profile__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 18px;
	margin: 0;
}

.gyc-member-profile__grid div {
	padding: 12px 0;
	border-bottom: 1px solid #e5e7eb;
}

.gyc-member-profile__grid dt {
	margin: 0 0 4px;
	font: 800 13px/1.3 "Trebuchet MS", Arial, sans-serif;
	text-transform: uppercase;
	letter-spacing: 0;
	color: var(--gyc-member-muted);
}

.gyc-member-profile__grid dd {
	margin: 0;
	color: #111827;
	font: 15px/1.45 "Trebuchet MS", Arial, sans-serif;
	overflow-wrap: anywhere;
}
.gyc-member-logout {
	margin: 0;
}

.gyc-member-page-template--login {
	overflow-x: hidden;
}

.gyc-member-page-template--login .gyc-member-auth {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: calc(100vh - 180px);
	margin: 0 auto;
	padding: 32px 16px;
}

.gyc-member-page-template--login .gyc-member-auth__card {
	width: min(100%, 420px);
	max-width: 420px;
}

.gyc-member-page-template--login .gyc-member-form {
	max-width: 100%;
}

.gyc-member-page-template--login .gyc-member-form input,
.gyc-member-page-template--login .gyc-member-button {
	width: 100%;
}

.gyc-member-page-template--profile {
	overflow-x: hidden;
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 32px 16px;
	box-sizing: border-box;
}

@media (max-width: 640px) {
	.gyc-member-auth,
	.gyc-member-profile {
		width: auto;
		margin: 20px 12px;
	}

	.gyc-member-auth__card,
.gyc-member-profile__card {
		padding: 18px;
	}

	.gyc-member-brand {
		gap: 10px;
		font-size: 16px;
	}

	.gyc-member-brand__logo {
		width: 52px;
		height: 52px;
		flex-basis: 52px;
	}

	.gyc-member-auth h2,
	.gyc-member-profile h2 {
		font-size: 24px;
	}

	.gyc-member-button {
		width: 100%;
	}

	.gyc-member-profile__summary {
		display: grid;
		gap: 16px;
		padding: 14px;
	}

	.gyc-member-profile__identity {
		grid-template-columns: 80px minmax(0, 1fr);
		gap: 14px;
	}

	.gyc-member-profile__badges {
		justify-content: flex-start;
		max-width: none;
	}

	.gyc-member-profile__image {
		width: 80px;
		height: 80px;
	}

	.gyc-member-profile__grid {
		grid-template-columns: 1fr;
		gap: 0;
	}
}
/* Pasted-structure member profile shell, themed for GYC. */
.gyc-member-profile-shell {
	--gyc-member-gold: #f8bf5a;
	--gyc-member-dark: #20364d;
	--gyc-member-text: #1f2933;
	--gyc-member-muted: #667085;
	--gyc-member-border: #e4e7ec;
	display: grid;
	grid-template-columns: 248px minmax(0, 1fr);
	width: 100% !important;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	display: grid;
	margin: 32px auto;
	border: 1px solid var(--gyc-member-border);
	border-radius: 8px;
	overflow: hidden;
	background: #ffffff;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.12);
	color: var(--gyc-member-text);
	font-family: "Trebuchet MS", sans-serif;
	height: 800px;
	min-height: 800px;
	max-height: 800px;
}

.gyc-member-profile-shell * {
	box-sizing: border-box;
	font-family: "Trebuchet MS", sans-serif;
}

.gyc-member-profile-sidebar {
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding: 28px 20px;
	background: var(--gyc-member-dark);
	color: #ffffff;
}

.gyc-member-profile-sidebar__who {
	min-height: 84px;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.08);
}

.gyc-member-profile-sidebar__avatar {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	border-radius: 50%;
	background: var(--gyc-member-gold);
	color: var(--gyc-member-dark);
	font: 800 16px/1 "Trebuchet MS", sans-serif;
	overflow: hidden;
}

.gyc-member-profile-sidebar__image {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	object-fit: cover;
	object-position: center;
}

.gyc-member-profile-sidebar__initials {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.gyc-member-profile-sidebar__image[hidden],
.gyc-member-profile-sidebar__initials[hidden] {
	display: none !important;
}

.gyc-member-profile-sidebar__name {
	font: 700 15px/1.25 "Trebuchet MS", sans-serif;
	color: #ffffff;
	overflow-wrap: anywhere;
}

.gyc-member-profile-sidebar__role {
	margin-top: 3px;
	font: 400 12px/1.35 "Trebuchet MS", sans-serif;
	color: rgba(255, 255, 255, 0.72);
	overflow-wrap: anywhere;
}

.gyc-member-profile-nav {
	display: grid;
	gap: 4px;
}

.gyc-member-profile-nav a {
	appearance: none;
	-webkit-appearance: none;
	display: block;
	width: 100%;
	padding: 10px 12px;
	border: 0;
	border-radius: 6px;
	background: transparent;
	color: rgba(255, 255, 255, 0.86);
	font: 700 14px/1.2 "Trebuchet MS", sans-serif;
	text-align: left;
	text-decoration: none;
	cursor: pointer;
}

.gyc-member-profile-nav a:hover,
.gyc-member-profile-nav a:focus,
.gyc-member-profile-nav a.is-active {
	background: var(--gyc-member-gold);
	color: var(--gyc-member-dark);
	outline: none;
}

.gyc-member-profile-signout {
	margin: auto 0 0;
	padding-top: 16px;
	border-top: 1px solid rgba(255, 255, 255, 0.16);
}

.gyc-member-profile-signout button {
	appearance: none;
	-webkit-appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 42px;
	padding: 11px 14px;
	border: 1px solid rgba(248, 191, 90, 0.65);
	border-radius: 6px;
	background: var(--gyc-member-gold);
	box-shadow: none;
	outline: none;
	color: var(--gyc-member-dark);
	font: 700 14px/1.2 "Trebuchet MS", sans-serif;
	cursor: pointer;
}

.gyc-member-profile-signout button:hover,
.gyc-member-profile-signout button:focus,
.gyc-member-profile-signout button:active {
	background: #ffffff;
	box-shadow: none;
	outline: none;
	color: var(--gyc-member-dark);
}



.gyc-member-profile-main {
	width: 100%;
	padding: 30px 30px 40px;
	min-width: 0;
	height: 100%;
	overflow: hidden;
	background: #ffffff;
}

.gyc-member-profile-main__content {
	min-height: 0;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	height: 100%;
	overflow-y: scroll;
	scrollbar-gutter: stable;
	padding-right: 4px;
	transition: none;
}

.gyc-member-profile-main__content.is-loading,
.gyc-member-profile-shell.is-switching .gyc-member-profile-main__content {
	opacity: 1;
	pointer-events: none;
}

.gyc-member-profile-history__notice {
	margin: 0 0 14px;
	font-size: 14px;
	font-weight: 700;
	color: #991b1b;
}

.gyc-member-profile-heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px;
	margin: 0 0 24px;
}

.gyc-member-profile-heading h1 {
	margin: 0;
	font: 800 28px/1.2 "Trebuchet MS", sans-serif;
	letter-spacing: 0;
	color: var(--gyc-member-dark);
}

.gyc-member-profile-heading p {
	margin: 4px 0 0;
	font: 400 15px/1.45 "Trebuchet MS", sans-serif;
	color: var(--gyc-member-muted);
}

.gyc-member-profile-shell .gyc-member-profile__card {
	padding: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
}

.gyc-member-profile-hero {
	min-height: 146px;
	margin: 0 0 24px;
	border: 1px solid var(--gyc-member-border);
	border-radius: 8px;
	overflow: hidden;
	background: #ffffff;
}

.gyc-member-profile-hero__body {
	display: flex;
	align-items: flex-end;
	gap: 20px;
	padding: 24px;
}

.gyc-member-profile-shell .gyc-member-profile__avatar,
.gyc-member-profile-shell .gyc-member-profile__image,
.gyc-member-profile-shell .gyc-member-profile__placeholder {
	width: 96px;
	height: 96px;
	flex: 0 0 96px;
	border-radius: 50%;
}

.gyc-member-profile-shell .gyc-member-profile__avatar {
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	background: #ffffff;
}

.gyc-member-profile-shell .gyc-member-profile__image,
.gyc-member-profile-shell .gyc-member-profile__placeholder {
	border: 4px solid #ffffff;
}

.gyc-member-profile-shell .gyc-member-profile__identity {
	min-width: 0;
	padding-bottom: 3px;
}

.gyc-member-profile-shell .gyc-member-profile__identity h2 {
	margin: 0 0 2px;
	font: 800 22px/1.2 "Trebuchet MS", sans-serif;
	letter-spacing: 0;
	color: var(--gyc-member-dark);
}

.gyc-member-profile-shell .gyc-member-profile__code {
	margin: 0 0 8px;
	font: 700 14px/1.35 "Trebuchet MS", sans-serif;
	color: var(--gyc-member-muted);
}

.gyc-member-profile-shell .gyc-member-profile__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.gyc-member-profile-shell .gyc-member-profile__badges span {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 5px 10px;
	border-radius: 999px;
	background: #eef2f6;
	color: var(--gyc-member-dark);
	font: 700 12px/1.2 "Trebuchet MS", sans-serif;
}

.gyc-member-profile-shell .gyc-member-profile__badges span:nth-child(2) {
	background: var(--gyc-member-gold);
	color: var(--gyc-member-dark);
}

.gyc-member-profile-content-grid {
	display: grid;
	grid-template-columns: 1.5fr 1fr;
	gap: 20px;
}

.gyc-member-profile-panel {
	width: 100%;
	box-sizing: border-box;
	padding: 22px 24px;
	border: 1px solid var(--gyc-member-border);
	border-radius: 8px;
	background: #ffffff;
}

.gyc-member-profile-panel + .gyc-member-profile-panel,
.gyc-member-profile-side-stack .gyc-member-profile-panel + .gyc-member-profile-panel {
	margin-top: 20px;
}

.gyc-member-profile-shell .gyc-member-profile__section-title {
	margin: 0 0 12px;
	padding: 0 0 11px;
	border-left: 0;
	border-bottom: 1px solid var(--gyc-member-border);
	font: 800 17px/1.25 "Trebuchet MS", sans-serif;
	letter-spacing: 0;
	color: var(--gyc-member-dark);
}

.gyc-member-profile-info-row {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	padding: 11px 0;
	border-bottom: 1px solid var(--gyc-member-border);
	font: 400 14px/1.45 "Trebuchet MS", sans-serif;
}

.gyc-member-profile-info-row:last-child {
	border-bottom: 0;
}

.gyc-member-profile-info-row .label {
	color: var(--gyc-member-muted);
}

.gyc-member-profile-info-row .value {
	max-width: 62%;
	font-weight: 700;
	text-align: right;
	color: var(--gyc-member-text);
	overflow-wrap: anywhere;
}


.gyc-member-profile-history {
	width: 100%;
	margin-top: 24px;
}


.gyc-member-profile-history__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 18px;
}

.gyc-member-profile-history__filter {
	display: grid;
	grid-template-columns: repeat(3, minmax(144px, 1fr));
	align-items: end;
	justify-content: flex-end;
	gap: 10px;
	width: min(100%, 452px);
}

.gyc-member-profile-history__filter label {
	display: grid;
	gap: 5px;
	font-size: 12px;
	font-weight: 700;
	color: #5b6a79;
}

.gyc-member-profile-history__filter input {
	height: 40px;
	min-height: 40px;
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	padding: 8px 9px;
	border: 1px solid var(--gyc-member-border);
	border-radius: 6px;
	background: #ffffff;
	color: var(--gyc-member-dark);
}

.gyc-member-profile-history__filter .gyc-member-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 40px;
	min-height: 40px;
	box-sizing: border-box;
	padding: 0 14px;
	line-height: 1;
	white-space: nowrap;
}

.gyc-member-profile-history__table-wrap {
	max-height: min(62vh, 560px);
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior: contain;
	scrollbar-gutter: stable both-edges;
	scrollbar-color: #8a96a3 #edf2f7;
	scrollbar-width: auto;
}

.gyc-member-profile-history__table-wrap::-webkit-scrollbar {
	width: 14px;
	height: 14px;
}

.gyc-member-profile-history__table-wrap::-webkit-scrollbar-track {
	background: #edf2f7;
	border-radius: 999px;
}

.gyc-member-profile-history__table-wrap::-webkit-scrollbar-thumb {
	background: #8a96a3;
	border: 3px solid #edf2f7;
	border-radius: 999px;
}

.gyc-member-profile-history__table-wrap::-webkit-scrollbar-thumb:hover {
	background: #64748b;
}
.gyc-member-profile-history__table {
	width: 100%;
	min-width: 760px;
	border-collapse: collapse;
	background: #ffffff;
}

.gyc-member-profile-history__table th,
.gyc-member-profile-history__table td {
	padding: 13px 14px;
	border-bottom: 1px solid var(--gyc-member-border);
	text-align: left;
	vertical-align: middle;
	font-size: 14px;
	color: var(--gyc-member-dark);
}

.gyc-member-profile-history__table th {
	position: sticky;
	top: 0;
	z-index: 2;
	background: #f4f7fa;
	font-size: 12px;
	font-weight: 800;
	text-transform: uppercase;
	color: #5b6a79;
}

.gyc-member-profile-history__table tr:last-child td {
	border-bottom: 0;
}

.gyc-member-profile-history__refund {
	margin: 0;
}

.gyc-member-profile-history__refund .gyc-member-button {
	min-height: 34px;
	padding: 8px 13px;
	font-size: 13px;
}
.gyc-member-button:disabled,
.gyc-member-button--disabled,
.gyc-member-button.is-loading {
	cursor: not-allowed;
	background: #d8e0e8 !important;
	border-color: #c3ced9 !important;
	color: #64748b !important;
	box-shadow: none !important;
	opacity: 0.92;
}

.gyc-member-button:disabled:hover,
.gyc-member-button--disabled:hover,
.gyc-member-button.is-loading:hover {
	background: #d8e0e8 !important;
	border-color: #c3ced9 !important;
	color: #64748b !important;
}

.gyc-member-profile-history__empty,
.gyc-member-profile-history__muted {
	margin: 0;
	font-size: 14px;
	font-weight: 700;
	color: #667789;
}
.gyc-member-profile-history__pagination {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin-top: 16px;
	flex-wrap: wrap;
}

.gyc-member-profile-history__pagination-summary {
	font-size: 13px;
	font-weight: 700;
	color: #5b6a79;
}

.gyc-member-profile-history__pagination-pages {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	flex-wrap: wrap;
}

.gyc-member-profile-history__pagination-pages a,
.gyc-member-profile-history__pagination-pages span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 36px;
	padding: 0 10px;
	border: 1px solid #cbd5e1;
	border-radius: 6px;
	background: #ffffff;
	color: #102d4d;
	font-size: 13px;
	font-weight: 800;
	text-decoration: none;
}

.gyc-member-profile-history__pagination-pages a:hover,
.gyc-member-profile-history__pagination-pages a:focus,
.gyc-member-profile-history__pagination-pages .is-current {
	border-color: #f5bb4f;
	background: #f5bb4f;
	color: #102d4d;
}
@media (max-width: 940px) {
	.gyc-member-profile-content-grid {
		grid-template-columns: 1fr;
	}
}
@media (max-width: 1280px) {
	.gyc-member-profile-history__header {
		display: grid;
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.gyc-member-profile-history__filter {
		grid-template-columns: 1fr;
		width: 100%;
		justify-content: stretch;
	}

	.gyc-member-profile-history__filter label,
	.gyc-member-profile-history__filter input,
	.gyc-member-profile-history__filter .gyc-member-button {
		width: 100%;
	}
}
@media (max-width: 780px) {
	.gyc-member-profile-shell {
		grid-template-columns: 1fr;
		width: calc(100% - 24px);
		margin: 20px auto;
		height: auto;
		max-height: none;
		min-height: 0;
	}

	.gyc-member-profile-sidebar {
		padding: 14px 16px;
	}

	.gyc-member-profile-main {
		width: 100%;
		padding: 24px 18px 36px;
		height: auto;
		max-height: none;
		min-height: 0;
		overflow: visible;
	}

	.gyc-member-profile-main__content {
		height: auto;
		max-height: none;
		min-height: 0;
		overflow-y: visible;
		scrollbar-gutter: auto;
		padding-right: 0;
	}

	.gyc-member-profile-hero__body {
		align-items: flex-start;
		flex-direction: column;
		gap: 12px;
	}

	.gyc-member-profile-history__header {
		display: grid;
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.gyc-member-profile-history__filter {
		grid-template-columns: minmax(112px, 1fr) minmax(112px, 1fr) minmax(88px, auto);
		width: 100%;
		gap: 10px;
}

	.gyc-member-profile-history__filter label,
	.gyc-member-profile-history__filter input,
	.gyc-member-profile-history__filter .gyc-member-button {
		width: 100%;
	}
}
@media (max-width: 520px) {
	.gyc-member-profile-history__filter {
		grid-template-columns: 1fr;
	}

	.gyc-member-profile-history__filter label,
	.gyc-member-profile-history__filter input,
	.gyc-member-profile-history__filter .gyc-member-button {
		width: 100%;
	}
}
@media (max-width: 420px) {
	.gyc-member-profile-info-row {
		display: grid;
		gap: 3px;
	}

	.gyc-member-profile-info-row .value {
		max-width: none;
		text-align: left;
	}
}

/* Global member dashboard frame: content must never size the outer shell. */
body .elementor-shortcode:has(> .gyc-member-profile-shell) {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
}

body .gyc-member-profile-shell {
	display: grid !important;
	grid-template-columns: 248px minmax(0, 1fr) !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	height: 800px !important;
	min-height: 800px !important;
	max-height: 800px !important;
	margin: 32px auto !important;
	padding: 0 !important;
	box-sizing: border-box !important;
	align-items: stretch !important;
	justify-self: center;
}

body .gyc-member-profile-shell > .gyc-member-profile-sidebar,
body .gyc-member-profile-shell > .gyc-member-profile-main {
	min-width: 0 !important;
	min-height: 0 !important;
	box-sizing: border-box !important;
}

body .gyc-member-profile-shell > .gyc-member-profile-main {
	height: 100% !important;
	overflow: hidden !important;
}

body .gyc-member-profile-shell .gyc-member-profile-main__content {
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	height: 100% !important;
	min-height: 0 !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
}

body .gyc-member-profile-shell:has(#slot-booking-history) {
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
}

body .gyc-member-profile-shell:has(#slot-booking-history) > .gyc-member-profile-main {
	height: auto !important;
	overflow: visible !important;
}

body .gyc-member-profile-shell .gyc-member-profile-main__content:has(#slot-booking-history) {
	height: auto !important;
	overflow-y: visible !important;
	scrollbar-gutter: auto !important;
	overflow-x: hidden !important;
	padding-right: 0 !important;
}

@media (max-width: 780px) {
	.gyc-member-profile-history__table-wrap {
		max-height: min(58vh, 480px);
	}
}
@media (max-width: 780px) {
	body .gyc-member-profile-shell {
		grid-template-columns: 1fr !important;
		width: calc(100vw - 24px) !important;
		max-width: none !important;
		height: min(800px, calc(100vh - 40px)) !important;
		min-height: 0 !important;
		max-height: none !important;
		margin: 20px auto !important;
	}

	body .gyc-member-profile-shell > .gyc-member-profile-main {
		height: auto !important;
		min-height: 0 !important;
		overflow: hidden !important;
	}

	body .gyc-member-profile-shell .gyc-member-profile-main__content {
		height: 100% !important;
		overflow-y: auto !important;
	}
}
.gyc-member-refund-dialog {
	width: min(760px, calc(100vw - 32px));
	max-height: min(86vh, 760px);
	padding: 0;
	border: 1px solid rgba(17, 54, 89, 0.18);
	border-radius: 8px;
	box-shadow: 0 22px 70px rgba(9, 25, 44, 0.24);
	color: #102d4d;
	overflow: hidden;
}

.gyc-member-refund-dialog::backdrop {
	background: rgba(8, 20, 34, 0.52);
}

.gyc-member-refund-dialog__body {
	max-height: min(86vh, 760px);
	overflow-y: auto;
	overflow-x: hidden;
	padding: 28px;
	background: #fff;
}

.gyc-member-refund-dialog__logo {
	display: flex;
	justify-content: center;
	margin: 0 42px 14px 0;
}

.gyc-member-refund-dialog__logo img {
	width: 74px;
	height: 74px;
	object-fit: contain;
}
.gyc-member-refund-dialog__body h3 {
	margin: 0 42px 10px 0;
	font-size: 24px;
	line-height: 1.25;
	color: #0e3156;
}

.gyc-member-refund-dialog__intro,
.gyc-member-refund-policy__section p,
.gyc-member-refund-response p {
	margin: 0 0 16px;
	color: #47617a;
	line-height: 1.55;
}

.gyc-member-refund-dialog__close-form {
	margin: 0;
}

.gyc-member-refund-dialog__close {
	position: absolute !important;
	top: 16px !important;
	right: 16px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 34px !important;
	height: 34px !important;
	min-width: 34px !important;
	min-height: 34px !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: #edf2f7 !important;
	box-shadow: none !important;
	color: #183b5d !important;
	font: 700 22px/1 Arial, sans-serif !important;
	text-align: center !important;
	text-decoration: none !important;
	cursor: pointer;
}

.gyc-member-refund-dialog__close:hover,
.gyc-member-refund-dialog__close:focus {
	background: #f5bb4f !important;
	color: #102d4d !important;
	outline: 2px solid rgba(245, 187, 79, 0.35);
	outline-offset: 2px;
}

.gyc-member-refund-dialog .gyc-member-button:hover,
.gyc-member-refund-dialog .gyc-member-button:focus {
	background: #173957;
	border-color: #173957;
	color: #fff;
}

.gyc-member-refund-dialog .gyc-member-button--secondary:hover,
.gyc-member-refund-dialog .gyc-member-button--secondary:focus {
	background: #d9e3ee;
	border-color: #b9c8d8;
	color: #102d4d;
}

.gyc-member-refund-booking {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 8px;
	margin: 18px 0;
}

.gyc-member-refund-booking div {
	padding: 10px 12px;
	border: 1px solid #d9e3ee;
	border-radius: 8px;
	background: #f7fafc;
}

.gyc-member-refund-booking dt {
	margin: 0 0 4px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #698099;
}

.gyc-member-refund-booking dd {
	margin: 0;
	font-size: 13px;
	font-weight: 700;
	color: #102d4d;
	word-break: break-word;
}

.gyc-member-refund-policy {
	overflow-x: auto;
	margin: 18px 0;
	border:none;
	border-radius: 0px;
}

.gyc-member-refund-policy table {
	width: 100%;
	border-collapse: collapse;
	font-size: 13px;
}

.gyc-member-refund-policy th,
.gyc-member-refund-policy td {
	padding: 12px 14px;
	border-bottom: 1px solid #e6edf4;
	text-align: left;
	vertical-align: top;
}

.gyc-member-refund-policy th {
	background: #173957;
	color: #fff;
	font-weight: 800;
}

.gyc-member-refund-policy tr:last-child td {
	border-bottom: 1px solid #e6edf4;
}

.gyc-member-refund-policy__note {
	margin: 0 0 16px;
	padding: 12px 14px;
	border-left: 4px solid #f5bb4f;
	background: #fff8e8;
	color: #384f66;
	line-height: 1.5;
}

.gyc-member-refund-policy__section {
	margin-top: 14px;
}

.gyc-member-refund-policy__section h4 {
	margin: 0 0 6px;
	font-size: 16px;
	color: #0e3156;
}

.gyc-member-refund-consent {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	margin: 18px 0 6px;
	padding: 14px;
	border: 1px solid #d9e3ee;
	border-radius: 8px;
	background: #f7fafc;
	font-weight: 700;
	line-height: 1.45;
}

.gyc-member-refund-consent.is-invalid {
	border-color: #d92d20;
	background: #fff1f0;
	box-shadow: 0 0 0 3px rgba(217, 45, 32, 0.14);
}

.gyc-member-refund-consent input {
	margin-top: 3px;
}

.gyc-member-refund-validation {
	display: block;
	margin: 8px 0 0;
	color: #b42318;
	font-size: 12px;
	font-weight: 800;
}

.gyc-member-refund-dialog__actions {
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	margin-top: 20px;
}

.gyc-member-refund-response__content {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

.gyc-member-refund-response__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 72px;
	height: 72px;
	margin: 4px auto 18px;
	border-radius: 50%;
}

.gyc-member-refund-response__icon svg {
	width: 72px;
	height: 72px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2.4;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.gyc-member-refund-response--success .gyc-member-refund-response__icon {
	color: #16a34a;
	background: #dcfce7;
}

.gyc-member-refund-response--error .gyc-member-refund-response__icon {
	color: #b42318;
	background: #fff0ee;
}

.gyc-member-refund-response h2 {
	width: 100%;
	margin: 0 42px 10px;
	text-align: center;
}

.gyc-member-refund-response--success h2 {
	color: #15803d;
}

.gyc-member-refund-response--error h2 {
	color: #b42318;
}

.gyc-member-refund-response__message {
	width: 100%;
	max-width: 460px;
	margin: 0 auto 16px;
	color: #47617a;
	font-size: 16px;
	line-height: 1.55;
	text-align: center;
}

@media (max-width: 720px) {
	.gyc-member-refund-dialog__body {
		padding: 22px 18px;
	}

	.gyc-member-refund-booking {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.gyc-member-refund-dialog__actions {
		flex-direction: column-reverse;
	}

	.gyc-member-refund-dialog__actions .gyc-member-button {
		width: 100%;
	}
}

/* Let the member profile template escape Hello Elementor's desktop site-main width cap. */
@media (min-width: 1200px) {
    body:not([class*="elementor-page-"]) .site-main.gyc-member-page-template--profile {
        width: 80vw !important;
        max-width: none !important;
    }
}
/* Mobile member auth/profile cleanup: prevent right overflow and reduce empty login spacing. */
@media (max-width: 780px) {
    .gyc-member-page-template--login {
        padding-top: 0 !important;
    }

    .gyc-member-page-template--login .gyc-member-auth {
        min-height: auto !important;
        align-items: flex-start !important;
        padding: 16px 14px 24px !important;
    }

    .gyc-member-page-template--login .gyc-member-auth__card {
        width: 100% !important;
        max-width: 420px !important;
        margin: 0 auto !important;
    }

    .gyc-member-page-template--profile {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding: 16px 10px 24px !important;
        overflow-x: hidden !important;
    }

    body .gyc-member-profile-shell {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 auto !important;
        overflow: visible !important;
    }

    body .gyc-member-profile-shell > .gyc-member-profile-sidebar,
    body .gyc-member-profile-shell > .gyc-member-profile-main {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    body .gyc-member-profile-shell > .gyc-member-profile-sidebar {
        padding: 14px 16px !important;
        overflow: hidden !important;
    }

    body .gyc-member-profile-shell > .gyc-member-profile-main {
        height: auto !important;
        overflow: visible !important;
        padding: 22px 18px 32px !important;
    }

    body .gyc-member-profile-shell .gyc-member-profile-main__content {
        height: auto !important;
        max-height: none !important;
        overflow-y: visible !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        padding-right: 0 !important;
    }

    .gyc-member-profile-sidebar__who,
    .gyc-member-profile-sidebar__nav a,
    .gyc-member-profile-shell .gyc-member-profile__card,
    .gyc-member-profile-shell .gyc-member-profile-panel {
        max-width: 100% !important;
        min-width: 0 !important;
    }
}
/* Mobile slot history: keep the table itself touch-scrollable inside the responsive dashboard. */
@media (max-width: 780px) {
    body .gyc-member-profile-history__table-wrap {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: scroll !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
        touch-action: pan-x pan-y;
        overscroll-behavior-x: contain;
        overscroll-behavior-y: auto;
        scrollbar-gutter: stable both-edges;
    }

    body .gyc-member-profile-history__table {
        min-width: 760px !important;
    }
}
