/* ============================================================
   XYY Mobile — 移动端适配
   ============================================================ */

/* ===== 登录 / 注册 / 找回密码 ===== */
@media (max-width: 992px) {
	.xyy-auth-wrap {
		min-height: 100dvh;
		min-height: -webkit-fill-available;
	}

	.xyy-auth-layout {
		flex-direction: column;
		min-height: 100dvh;
	}

	/* 移动端精简左侧展示 */
	.xyy-auth-showcase {
		flex: 0 0 auto;
		min-height: auto;
		padding: calc(20px + env(safe-area-inset-top, 0px)) 20px 16px;
		justify-content: flex-start;
		text-align: center;
	}

	.xyy-auth-showcase-inner {
		max-width: 100%;
		margin: 0 auto;
	}

	.xyy-auth-showcase h2 {
		font-size: 22px;
		margin-bottom: 8px;
	}

	.xyy-auth-showcase p {
		font-size: 13px;
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}

	.xyy-auth-showcase .xyy-tag {
		margin-top: 10px;
		font-size: 12px;
	}

	.xyy-auth-panel {
		flex: 0 1 auto;
		width: 100%;
		max-width: 100%;
		border-left: none;
		border-top: none;
		box-shadow: none;
		padding: 24px 20px calc(24px + env(safe-area-inset-bottom, 0px));
		align-items: center !important;
		justify-content: center !important;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	body.xyy-theme .xyy-auth-wrap {
		justify-content: center;
		align-items: center;
		padding: calc(16px + env(safe-area-inset-top, 0px)) 16px calc(16px + env(safe-area-inset-bottom, 0px));
	}

	body.xyy-theme .xyy-auth-layout {
		width: 100%;
		max-width: 400px;
		margin: 0 auto;
		min-height: auto;
	}

	.xyy-auth-card {
		max-width: 100%;
	}

	.xyy-auth-brand h1 {
		font-size: 20px;
	}

	/* 旧版注册页全宽 */
	body.xyy-theme .container-fluid.p-0 > .row.no-gutters {
		flex-direction: column;
	}

	body.xyy-theme .container-fluid.p-0 .col-xl-5 {
		max-width: 100% !important;
		width: 100% !important;
		border-left: none;
		border-top: 1px solid var(--xyy-glass-border);
	}

	body.xyy-theme .auth-full-page-content {
		padding: 24px 20px !important;
	}

	body.xyy-theme .login_right {
		width: 100% !important;
		margin-top: 0 !important;
	}
}

@media (max-width: 576px) {
	.xyy-auth-showcase {
		padding: calc(16px + env(safe-area-inset-top, 0px)) 16px 12px;
	}

	.xyy-auth-showcase h2 {
		font-size: 18px;
	}

	.xyy-auth-panel {
		padding: 20px 16px calc(20px + env(safe-area-inset-bottom, 0px));
	}

	.xyy-auth-brand img {
		max-height: 40px;
	}

	.xyy-auth-card .nav-tabs-custom {
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}

	.xyy-auth-card .nav-tabs-custom::-webkit-scrollbar {
		display: none;
	}

	.xyy-auth-card .nav-tabs-custom .nav-link {
		white-space: nowrap;
		font-size: 13px;
		padding: 8px 12px;
	}

	.xyy-auth-links {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}

	/* 手机验证码区号 + 号码竖排 */
	.xyy-auth-card .input-group {
		flex-wrap: wrap;
	}

	.xyy-auth-card .input-group-prepend {
		width: 100% !important;
		margin-bottom: 8px;
	}

	.xyy-auth-card .input-group-prepend + .form-control,
	.xyy-auth-card .input-group > .form-control {
		width: 100%;
		flex: 1 1 100%;
	}

	.xyy-auth-card .input-group-append {
		width: 100%;
		margin-top: 8px;
	}

	.xyy-auth-card .input-group-append .btn {
		width: 100%;
	}
}

/* iOS 输入框防缩放 */
@media (max-width: 992px) {
	body.xyy-theme .form-control,
	body.xyy-theme select.form-control,
	.xyy-auth-card .form-control {
		font-size: 16px !important;
		min-height: 44px;
	}

	body.xyy-theme .btn,
	body.xyy-theme .btn-primary,
	.xyy-auth-card .btn-primary {
		min-height: 44px;
		font-size: 15px;
	}
}

/* ===== 已登录：顶栏 + 侧边栏 ===== */
@media (max-width: 992px) {
	:root {
		--xyy-topbar-h: 64px;
		--xyy-content-gap: 12px;
	}

	body.xyy-theme #page-topbar {
		left: 0 !important;
		position: fixed;
		top: 0;
		right: 0;
		z-index: 1001;
		padding-top: env(safe-area-inset-top, 0px);
	}

	body.xyy-theme #page-topbar .navbar-header {
		height: var(--xyy-topbar-h);
		min-height: var(--xyy-topbar-h);
		padding: 0 14px;
	}

	body.xyy-theme .main-content {
		margin-left: 0 !important;
		padding-top: calc(var(--xyy-topbar-h) + var(--xyy-content-gap) + env(safe-area-inset-top, 0px)) !important;
	}

	body.xyy-theme .page-content {
		padding: 16px 14px calc(16px + env(safe-area-inset-bottom, 0px)) !important;
	}

	body.xyy-theme .footer {
		left: 0 !important;
		padding-bottom: env(safe-area-inset-bottom, 0px);
	}

	/* 侧边栏抽屉遮罩（真实 DOM 元素，见 header.tpl） */
	body.xyy-theme .xyy-sidebar-overlay {
		display: none;
		position: fixed;
		inset: 0;
		z-index: 1001;
		background: rgba(0, 0, 0, 0.55);
		backdrop-filter: blur(2px);
		-webkit-backdrop-filter: blur(2px);
	}

	body.xyy-theme.sidebar-enable .xyy-sidebar-overlay {
		display: block;
	}

	/* 侧边栏抽屉 */
	body.xyy-theme .vertical-menu {
		position: fixed !important;
		top: 0;
		left: 0;
		height: 100dvh !important;
		height: -webkit-fill-available !important;
		width: 280px !important;
		max-width: 85vw;
		z-index: 1002;
		transform: translateX(-100%);
		transition: transform 0.3s ease;
		padding-top: env(safe-area-inset-top, 0px);
		padding-bottom: env(safe-area-inset-bottom, 0px);
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	body.xyy-theme.sidebar-enable .vertical-menu {
		transform: translateX(0);
		box-shadow: 4px 0 24px rgba(0, 0, 0, 0.4) !important;
	}

	/* 遮罩层：点击关闭菜单 */
	body.xyy-theme .xyy-sidebar-overlay {
		cursor: pointer;
	}

	/* 汉堡按钮触控区域 */
	body.xyy-theme #vertical-menu-btn {
		min-width: 44px;
		min-height: 44px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	body.xyy-theme #page-topbar .header-item {
		min-width: 40px;
		min-height: 40px;
	}

	/* 移动端顶栏 Logo 放大 */
	body.xyy-theme #page-topbar .navbar-brand-box.xyy-brand-box {
		width: auto !important;
		height: var(--xyy-topbar-h) !important;
		padding: 0 10px 0 16px !important;
	}

	body.xyy-theme #page-topbar .xyy-logo-full {
		max-height: 38px !important;
	}

	body.xyy-theme #page-topbar .logo-lg img {
		max-height: 38px !important;
	}
}

@media (max-width: 576px) {
	body.xyy-theme #page-topbar .d-none.d-xl-inline-block.ml-1 {
		display: none !important;
	}

	body.xyy-theme #page-topbar .navbar-header .d-flex:first-child {
		flex: 1;
		min-width: 0;
	}

	body.xyy-theme #page-topbar .navbar-header > .d-flex:last-child {
		flex-shrink: 0;
	}
}

/* ===== 页面标题 / 面包屑 ===== */
@media (max-width: 768px) {
	body.xyy-theme .page-title-box {
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 8px;
	}

	body.xyy-theme .page-title-box h4 {
		font-size: 17px !important;
	}

	body.xyy-theme .page-title-right {
		width: 100%;
	}

	body.xyy-theme .breadcrumb {
		font-size: 12px;
		flex-wrap: wrap;
		margin-bottom: 0;
	}
}

/* ===== 卡片 / 首页布局 ===== */
@media (max-width: 992px) {
	body.xyy-theme .card {
		margin-bottom: 12px;
	}

	body.xyy-theme .card-body {
		padding: 16px !important;
	}

	body.xyy-theme .user-center_h300 {
		min-height: auto;
	}

	body.xyy-theme .user-center_calc {
		min-height: 200px;
	}

	/* 首页三列变单列 */
	body.xyy-theme .clientarea .row > section,
	body.xyy-theme .page-content .row > section {
		margin-bottom: 0;
	}

	body.xyy-theme #balanceCharts {
		min-height: 180px;
	}

	body.xyy-theme .user-center_product_grid {
		max-height: 240px;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}
}

@media (max-width: 576px) {
	body.xyy-theme .user-center_safety_wrapper {
		gap: 12px;
	}

	body.xyy-theme .user-center_safety {
		width: 44px !important;
		height: 44px !important;
	}

	body.xyy-theme .card-body .d-flex.justify-content-around {
		flex-wrap: wrap;
		gap: 12px;
	}

	body.xyy-theme .card-body .d-flex.justify-content-around > a,
	body.xyy-theme .card-body .d-flex.justify-content-around > div {
		flex: 1 1 30%;
		min-width: 80px;
		text-align: center;
		font-size: 13px;
	}
}

/* ===== 表格 ===== */
@media (max-width: 992px) {
	body.xyy-theme .table-responsive {
		border: 1px solid rgba(255, 255, 255, 0.12);
		border-radius: 12px;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		margin-bottom: 0;
	}

	body.xyy-theme .table-header,
	body.xyy-theme .table-footer {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 12px;
		padding: 12px 16px !important;
	}

	body.xyy-theme .table-filter,
	body.xyy-theme .table-tools,
	body.xyy-theme .table-pageinfo {
		width: 100%;
		margin-bottom: 0 !important;
	}

	body.xyy-theme .table-tools .btn {
		width: 100%;
		margin-bottom: 8px;
	}

	body.xyy-theme .table td,
	body.xyy-theme .table th {
		padding: 10px 12px !important;
		font-size: 13px;
	}
}

/* ===== 表单 / 模态框 ===== */
@media (max-width: 768px) {
	body.xyy-theme .form-group.row {
		flex-direction: column;
	}

	body.xyy-theme .form-group.row .col-form-label {
		text-align: left !important;
		margin-bottom: 6px;
	}

	body.xyy-theme .form-group.row > [class*="col-"] {
		max-width: 100%;
		flex: 0 0 100%;
	}

	body.xyy-theme .modal-dialog {
		margin: 12px;
		max-width: calc(100% - 24px);
	}

	body.xyy-theme .modal-body {
		padding: 16px;
	}

	body.xyy-theme .modal-footer {
		flex-wrap: wrap;
		gap: 8px;
	}

	body.xyy-theme .modal-footer .btn {
		flex: 1 1 auto;
		min-width: calc(50% - 8px);
	}

	body.xyy-theme .dropdown-menu {
		max-width: calc(100vw - 24px);
	}
}

/* ===== 安全中心 / 特殊页 ===== */
@media (max-width: 768px) {
	body.xyy-theme .security-header {
		padding: 20px 16px !important;
	}

	body.xyy-theme .security-header .row {
		flex-direction: column;
	}

	body.xyy-theme .btn-group.btn-group-toggle {
		display: flex !important;
		flex-wrap: wrap;
		width: 100%;
	}

	body.xyy-theme .btn-group-toggle > .btn {
		flex: 1 1 auto;
		margin-bottom: 8px !important;
		font-size: 13px;
	}
}

/* ===== 购物车 ===== */
@media (max-width: 768px) {
	body.xyy-theme .col-sm-4,
	body.xyy-theme .col-sm-9,
	body.xyy-theme .col-sm-10 {
		flex: 0 0 100%;
		max-width: 100%;
	}

	body.xyy-theme .card .card {
		margin-bottom: 12px;
	}

	body.xyy-theme .sidebar-categories,
	body.xyy-theme .list-group {
		margin-bottom: 16px;
	}
}

/* ===== 背景图：仅 html[data-xyy-bg="mobile"]（由 xyy-env.js 设置，禁止用 xyy-app-shell） ===== */
/* CSS 兜底：即使 JS 未加载，窄屏也用移动壁纸 */
@media (max-width: 992px) {
	body.xyy-theme .xyy-page-bg {
		background-image:
			url('/themes/clientarea/xyy/assets_custom/img/xyy-bg-mobile.png?v=3.31'),
			linear-gradient(135deg, #1a1035 0%, #2d1b69 40%, #6b21a8 70%, #831843 100%) !important;
		background-position: center center !important;
		background-size: cover !important;
		background-repeat: no-repeat !important;
	}

	body.xyy-theme .xyy-page-bg #xyyBgImg {
		display: none !important;
	}
}

html[data-xyy-bg="mobile"] body.xyy-theme {
	background-color: #1a1035 !important;
	min-height: 100dvh;
	min-height: -webkit-fill-available;
}

html[data-xyy-bg="mobile"] body.xyy-theme .xyy-page-bg {
	width: 100vw;
	height: 100dvh;
	height: -webkit-fill-available;
	min-height: 100vh;
	min-height: 100dvh;
	left: 0;
	right: 0;
	margin: 0;
	padding: 0;
	background-image:
		url('/themes/clientarea/xyy/assets_custom/img/xyy-bg-mobile.png?v=3.31'),
		linear-gradient(135deg, #1a1035 0%, #2d1b69 40%, #6b21a8 70%, #831843 100%) !important;
	background-position: center center !important;
	background-size: cover !important;
}

html[data-xyy-bg="mobile"] body.xyy-theme .xyy-page-bg #xyyBgImg {
	display: none !important;
}

/* EXE 桌面客户端：始终 PC 官网壁纸，不受 data-xyy-bg=mobile 影响 */
html[data-xyy-bg="mobile"] body.xyy-desktop-client.xyy-theme .xyy-page-bg,
body.xyy-desktop-client.xyy-theme .xyy-page-bg {
	background-image: none !important;
}

html[data-xyy-bg="mobile"] body.xyy-desktop-client.xyy-theme .xyy-page-bg #xyyBgImg,
body.xyy-desktop-client.xyy-theme .xyy-page-bg #xyyBgImg {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
}

html[data-xyy-bg="desktop"] body.xyy-theme .xyy-page-bg #xyyBgImg {
	display: block !important;
}

@media (max-width: 992px) {
	html[data-xyy-bg="mobile"],
	html[data-xyy-bg="mobile"] body.xyy-theme {
		background-color: #1a1035 !important;
		min-height: 100dvh;
		min-height: -webkit-fill-available;
	}

	body.xyy-theme .xyy-page-bg-img {
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		max-width: none;
		max-height: none;
		min-width: 100%;
		min-height: 100%;
		object-fit: cover;
		object-position: center center;
		transform: none;
		-webkit-transform: none;
	}

	body.xyy-theme .main-content,
	body.xyy-theme .page-content,
	body.xyy-theme .container-fluid {
		background: transparent !important;
		background-color: transparent !important;
	}
}

@supports (-webkit-touch-callout: none) {
	body.xyy-theme .xyy-page-bg,
	body.xyy-theme .xyy-page-bg-img {
		height: -webkit-fill-available;
		min-height: -webkit-fill-available;
	}
}

/* ============================================================
   v3.7 全站移动端增强
   ============================================================ */

/* 基础：防横向溢出 + 安全区 */
html {
	-webkit-text-size-adjust: 100%;
}

body.xyy-theme {
	overflow-x: hidden;
	max-width: 100vw;
	min-height: 100dvh;
	min-height: -webkit-fill-available;
}

body.xyy-theme .main-content,
body.xyy-theme .page-content,
body.xyy-theme .container-fluid {
	max-width: 100%;
	overflow-x: hidden;
}

body.xyy-theme .container-fluid {
	padding-left: 12px;
	padding-right: 12px;
}

body.xyy-theme img,
body.xyy-theme video {
	max-width: 100%;
	height: auto;
}

body.xyy-theme a,
body.xyy-theme button,
body.xyy-theme .btn,
body.xyy-theme .header-item,
body.xyy-theme .page-link {
	-webkit-tap-highlight-color: transparent;
}

/* 顶栏：小屏 Logo 与图标不挤压 */
@media (max-width: 576px) {
	:root {
		--xyy-topbar-h: 56px;
	}

	body.xyy-theme #page-topbar .xyy-logo-full {
		max-height: 34px !important;
	}

	body.xyy-theme #page-topbar .navbar-header {
		padding: 0 8px;
		gap: 4px;
	}

	body.xyy-theme #page-topbar .navbar-header > .d-flex:last-child {
		flex-wrap: nowrap;
		gap: 2px;
	}

	body.xyy-theme #page-topbar .header-item {
		min-width: 36px;
		min-height: 36px;
		padding: 4px !important;
	}

	body.xyy-theme #page-topbar .dropdown .header-item img {
		height: 14px !important;
	}
}

/* 用户中心首页移动端 */
@media (max-width: 992px) {
	body.xyy-theme.xyy-page-clientarea .xyy-clientarea-home > section {
		flex: 0 0 100%;
		max-width: 100%;
		padding-left: 0;
		padding-right: 0;
		margin-bottom: 12px;
	}

	body.xyy-theme .user-center_h300,
	body.xyy-theme .user-center_calc {
		height: auto !important;
		min-height: 0 !important;
	}

	body.xyy-theme .user-center_h300 .h-75,
	body.xyy-theme .user-center_h300 .h-25 {
		height: auto !important;
		min-height: 0 !important;
	}

	body.xyy-theme .user-center_safety_wrapper {
		width: 100% !important;
		max-width: 240px;
		margin: 12px auto 0 !important;
	}

	body.xyy-theme .user-center_h300 .user-center_h300 .d-flex.h100p,
	body.xyy-theme .user-center_h300 .d-flex.h100p {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 16px;
		height: auto !important;
	}

	body.xyy-theme #balanceCharts {
		width: 100% !important;
		min-height: 160px !important;
		height: 160px !important;
	}

	body.xyy-theme .user-center_h300 .btn.w-50 {
		width: 100% !important;
		max-width: 100%;
	}

	body.xyy-theme .user-center_product_grid {
		grid-template-columns: 1fr !important;
		max-height: none !important;
	}

	body.xyy-theme .user-center_name {
		max-width: 100%;
	}

	body.xyy-theme .user-center_notice_item {
		padding: 10px 0;
	}

	body.xyy-theme.xyy-page-clientarea .card {
		margin-bottom: 12px;
	}
}

@media (max-width: 576px) {
	body.xyy-theme .page-content {
		padding: 12px 10px calc(64px + env(safe-area-inset-bottom, 0px)) !important;
	}

	body.xyy-theme .card-body {
		padding: 14px !important;
	}

	body.xyy-theme .user-center_h300 .xyy-profile-stats {
		display: grid !important;
		grid-template-columns: repeat(3, 1fr);
		gap: 8px;
	}
}

/* 表格横向滚动 */
@media (max-width: 992px) {
	body.xyy-theme .table {
		min-width: 560px;
	}

	body.xyy-theme .table-responsive {
		-webkit-overflow-scrolling: touch;
		overscroll-behavior-x: contain;
	}

	body.xyy-theme .table-pagination,
	body.xyy-theme .table-pageinfo {
		flex-wrap: wrap;
		justify-content: center !important;
		gap: 8px;
	}

	body.xyy-theme .pagination {
		flex-wrap: wrap;
		justify-content: center;
	}
}

/* 页脚移动端 */
@media (max-width: 992px) {
	body.xyy-theme .footer {
		position: relative !important;
		height: auto !important;
		padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px)) !important;
		text-align: center;
	}

	body.xyy-theme .footer .row {
		flex-direction: column;
		gap: 4px;
	}

	body.xyy-theme .footer .text-sm-right {
		text-align: center !important;
	}
}

/* 登录/注册全屏适配 */
@media (max-width: 992px) {
	body.xyy-theme .xyy-auth-wrap {
		min-height: 100dvh;
		min-height: -webkit-fill-available;
	}

	body.xyy-theme .xyy-auth-panel {
		max-height: none;
		border-radius: var(--xyy-glass-radius, 14px) !important;
	}

	body.xyy-theme .xyy-auth-layout {
		max-width: 100%;
	}
}

@media (max-width: 380px) {
	body.xyy-theme .xyy-auth-brand .xyy-logo {
		max-height: 52px !important;
	}

	body.xyy-theme .xyy-auth-brand h1 {
		font-size: 18px;
	}
}

/* 用户中心 / 购物车列宽（勿全局覆盖 col-md 表单） */
@media (max-width: 992px) {
	body.xyy-theme .xyy-clientarea-home > section {
		flex: 0 0 100%;
		max-width: 100%;
	}

	body.xyy-theme .xyy-cart-layout > .row > [class*="col-"],
	body.xyy-theme .xyy-cart-layout .row > [class*="col-"] {
		flex: 0 0 100%;
		max-width: 100%;
	}

	body.xyy-theme .xyy-cart-layout .row {
		margin-left: 0;
		margin-right: 0;
	}

	body.xyy-theme .xyy-product-card {
		margin-bottom: 12px;
	}
}

/* v10 / Element UI 移动端 */
@media (max-width: 768px) {
	body.xyy-theme .el-dialog {
		width: calc(100vw - 24px) !important;
		margin: 12px auto !important;
	}

	body.xyy-theme .el-table {
		font-size: 12px;
	}

	body.xyy-theme .main-card .content-top {
		flex-direction: column;
		align-items: flex-start !important;
		gap: 8px;
	}
}

@media (max-width: 480px) {
	.xyy-auth-showcase {
		display: none;
	}

	.xyy-auth-panel {
		border-top: none;
		min-height: 100dvh;
		align-items: center;
		justify-content: center;
	}
}

/* 横屏手机 */
@media (max-height: 500px) and (orientation: landscape) {
	.xyy-auth-showcase {
		display: none;
	}

	.xyy-auth-panel {
		padding: 16px 24px;
		overflow-y: auto;
	}

	.xyy-auth-brand {
		margin-bottom: 16px;
	}

	.xyy-auth-brand img {
		max-height: 36px;
		margin-bottom: 8px;
	}
}

/* ===== 登录/注册页：移动端壁纸 + 协议弹窗适配 ===== */
html[data-xyy-bg="mobile"] body.xyy-theme.xyy-page-auth {
	min-height: 100dvh;
	min-height: -webkit-fill-available;
	background-color: #1a1035 !important;
}

html[data-xyy-bg="mobile"] body.xyy-theme.xyy-page-auth .xyy-page-bg {
	display: block !important;
	visibility: visible !important;
}

html[data-xyy-bg="mobile"] body.xyy-theme.xyy-page-auth .xyy-page-bg #xyyBgImg {
	display: none !important;
}

html[data-xyy-bg="desktop"] body.xyy-theme.xyy-page-auth .xyy-page-bg #xyyBgImg {
	display: block !important;
}

@media (max-width: 992px) {
	body.xyy-legal-modal-open {
		overflow: hidden;
		touch-action: none;
	}

	#xyyLegalModal {
		padding: 0 !important;
	}

	#xyyLegalModal .xyy-legal-modal-dialog,
	#xyyLegalModal .modal-dialog-centered {
		max-width: 100%;
		width: 100%;
		height: 100%;
		max-height: 100%;
		margin: 0;
		align-items: flex-end;
		min-height: 100%;
	}

	#xyyLegalModal .xyy-legal-modal-content {
		width: 100%;
		max-height: min(90dvh, calc(100dvh - env(safe-area-inset-top, 0px) - 8px));
		border-radius: 18px 18px 0 0 !important;
		margin: 0;
	}

	#xyyLegalModal .xyy-legal-modal-header {
		padding: 14px 16px !important;
		padding-top: calc(14px + env(safe-area-inset-top, 0px)) !important;
	}

	#xyyLegalModal .xyy-legal-modal-header .modal-title {
		font-size: 15px;
		padding-right: 8px;
	}

	#xyyLegalModal .xyy-legal-modal-header .close {
		min-width: 44px;
		min-height: 44px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		font-size: 28px;
	}

	#xyyLegalModal .xyy-legal-modal-content-inner {
		padding: 12px 16px calc(18px + env(safe-area-inset-bottom, 0px));
		font-size: 13px;
		line-height: 1.7;
	}

	#xyyLegalModal .xyy-legal-modal-content-inner p,
	#xyyLegalModal .xyy-legal-modal-content-inner span,
	#xyyLegalModal .xyy-legal-modal-content-inner li {
		font-size: 13px !important;
		line-height: 1.7 !important;
		word-break: break-word;
		overflow-wrap: anywhere;
	}

	#xyyLegalModal .xyy-legal-modal-content-inner h4 {
		font-size: 15px;
		margin: 14px 0 8px;
		color: #111 !important;
	}

	#xyyLegalModal .xyy-legal-modal-content-inner strong {
		font-size: 14px;
	}

	.xyy-auth-footer .xyy-legal-links {
		font-size: 12px;
		line-height: 1.8;
		flex-wrap: wrap;
		justify-content: center;
	}
}
