/* Typography: Inter + Be Vietnam Pro — see assets/design-system.css (loaded from header). */

*{box-sizing:border-box}
body{margin:0;font-family:Arial,sans-serif;background:#f8fafc;color:#0f172a}
a{text-decoration:none;color:inherit}
.container{max-width:1180px;margin:0 auto;padding:0 16px}
.main-header{position:sticky;top:0;background:aliceblue;z-index:1000;box-shadow:0 2px 12px rgba(15,23,42,.08)}
.main-header .container{
	max-width:100%!important;
	width:100%!important;
	padding-left:48px!important;
	padding-right:48px!important;
}
.header-inner{
	min-height:70px;
	height:auto;
	padding-top:3px;
	padding-bottom:3px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:16px;
}
.logo{
	display:inline-flex;
	align-items:center;
	line-height:1;
	font-size:0!important;
	color:transparent!important;
	text-indent:-9999px;
	overflow:hidden;
}
.logo::before,
.logo::after{
	content:none!important;
	display:none!important;
}
.logo img{
	display:block;
	width:auto;
	height:56px;
	max-width:none;
	object-fit:contain;
}
.nav-menu{display:flex;gap:20px;flex:1;justify-content:center;align-items:center}
.nav-link{padding:9px 12px;border-radius:8px;font-weight:600;color:#334155}
.nav-link:hover{background:#eff6ff;color:#1d4ed8}
.nav-link.active{background:#eff6ff;color:#1d4ed8}
.nav-link:focus,
.nav-link:focus-visible{background:#eff6ff;color:#1d4ed8;outline:none}
.actions{display:flex;align-items:center;gap:8px;flex:0 0 auto;justify-content:flex-end;min-width:0;margin-left:auto!important;padding-right:0!important}
.actions > *{
	display:flex;
	align-items:center;
}
.main-header .actions .user-menu{margin-left:auto;align-self:center}
.main-header .actions .user-pill{margin-left:auto}
.lang-switch{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:6px;
	height:42px;
	min-height:42px;
	padding:4px 10px;
	border:1px solid #cbd5e1;
	border-radius:999px;
	background:#fff;
	box-sizing:border-box;
	align-self:auto;
	margin:0!important;
	vertical-align:middle;
}
.lang-icon{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:24px;
	height:24px;
	border-radius:6px;
	border:1px solid transparent;
}
.lang-icon img{
	display:block;
	width:18px;
	height:13px;
	object-fit:cover;
	border-radius:2px;
}
.lang-icon.active{border-color:#93c5fd;background:#eff6ff}
.lang-divider{font-size:13px;color:#94a3b8;line-height:1}
.btn{border:none;border-radius:10px;padding:10px 14px;font-weight:600;cursor:pointer}
.btn-primary{background:#2563eb;color:#fff}
.btn-primary:hover{background:#1d4ed8}
.btn-outline{background:#fff;border:1px solid #cbd5e1;color:#0f172a}
.auth-btn{gap:6px}
.auth-btn-icon{font-size:15px;line-height:1}
.auth-btn-label{line-height:1}
.view-all-btn{gap:6px}
.view-all-icon{font-size:15px;line-height:1}
.view-all-label{line-height:1}
body.my-admin-root .btn.view-all-btn,
body.my-admin-root a.btn.view-all-btn,
body.my-admin-root .btn.btn-outline.view-all-btn,
body.my-admin-root a.btn.btn-outline.view-all-btn{
	background:#16a34a!important;
	color:#fff!important;
	border:1px solid #15803d!important;
}
body.my-admin-root .btn.view-all-btn:hover,
body.my-admin-root a.btn.view-all-btn:hover,
body.my-admin-root .btn.btn-outline.view-all-btn:hover,
body.my-admin-root a.btn.btn-outline.view-all-btn:hover{
	background:#15803d!important;
	color:#fff!important;
	border-color:#166534!important;
}
.top-villa-view-all-mobile-wrap{display:none}
.btn.btn-villa-detail,
a.btn.btn-villa-detail{
	background:#fff!important;
	background-color:#fff!important;
	color:#000!important;
	border:1px solid #cbd5e1!important;
	border-width:1px!important;
	border-style:solid!important;
	border-color:#cbd5e1!important;
	box-sizing:border-box!important;
	transition:background-color .15s ease,color .15s ease!important;
}
.btn.btn-villa-detail:hover,
a.btn.btn-villa-detail:hover{
	background:#e5e5e5!important;
	background-color:#e5e5e5!important;
	color:#2563eb!important;
	-webkit-text-fill-color:#2563eb!important;
	border:1px solid #cbd5e1!important;
	border-color:#cbd5e1!important;
}
.avatar{width:38px;height:38px;border-radius:999px;background:#dbeafe;color:#1d4ed8;display:flex;align-items:center;justify-content:center;font-weight:700}
.avatar.avatar-image{padding:0;overflow:hidden;background:#e2e8f0;color:transparent}
.avatar.avatar-image img{display:block;width:100%;height:100%;object-fit:cover;border-radius:999px}
.user-menu{position:relative;display:flex;align-items:center}
.user-menu-toggle{border:none}
.user-pill{display:inline-flex;align-items:center;gap:8px;padding:4px 10px;border:1px solid #cbd5e1;background:#fff;border-radius:999px;color:#0f172a;font-weight:600}
.user-pill:hover{background:#f8fafc}
.user-menu-dropdown{position:absolute;right:0;top:46px;min-width:210px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 14px 28px rgba(15,23,42,.14);display:none;overflow:hidden;z-index:1050}
.user-menu-dropdown.show{display:block}
[hidden]{display:none!important}
.user-menu-name{padding:10px 12px;font-size:13px;color:#475569;border-bottom:1px solid #e2e8f0}
.user-menu-dropdown a{display:block;padding:10px 12px;color:#0f172a}
.user-menu-dropdown a:hover{background:#f8fafc}
.user-menu-dropdown a.active{background:#eff6ff;font-weight:600}
.menu-toggle{display:none;border:1px solid #cbd5e1;background:#fff;border-radius:10px;width:38px;height:38px}
.mobile-menu{display:none;position:fixed;top:0;left:-280px;width:260px;height:100vh;background:#fff;padding:18px;z-index:1200;transition:left .25s ease;box-shadow:0 16px 30px rgba(0,0,0,.15)}
.mobile-menu.open{left:0}
.overlay{display:none;position:fixed;inset:0;background:rgba(2,6,23,.45);z-index:1100}
.overlay.show{display:block}
.mobile-breadcrumb{display:none;background:#fff;border-bottom:1px solid #e2e8f0}
.mobile-breadcrumb .container{padding-top:8px;padding-bottom:8px;font-size:13px;color:#64748b;display:flex;align-items:center;gap:6px}
.mobile-breadcrumb a{
	color:#1d4ed8!important;
	font-weight:600;
	text-decoration:underline;
	text-decoration-color:transparent;
	text-underline-offset:2px;
	transition:color .15s ease,text-decoration-color .15s ease;
}
.mobile-breadcrumb a:hover{color:#2563eb!important;text-decoration-color:#93c5fd}
.mobile-breadcrumb a:focus-visible{outline:2px solid #2563eb;outline-offset:2px;border-radius:4px}
.mobile-breadcrumb > .container > span:not(.sep){color:#475569!important;font-weight:600}
.mobile-breadcrumb .sep{color:#94a3b8}
.admin-manage-breadcrumb{
	width:100%;
	max-width:100%;
	margin:0;
	padding:0;
	display:block;
	background:#fff;
	border-bottom:1px solid #e2e8f0;
	box-sizing:border-box;
}
body.my-admin-root .admin-manage-breadcrumb-inner{
	max-width:100%!important;
	width:100%!important;
	margin:0;
	padding:10px 16px!important;
	box-sizing:border-box;
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:6px;
	justify-content:flex-start;
	font-size:13px;
	color:#64748b;
}
.admin-manage-breadcrumb .sep{color:#94a3b8;user-select:none}
.admin-manage-breadcrumb + .mobile-breadcrumb{display:none!important}
.admin-manage-breadcrumb.subscriber-portal-breadcrumb + .mobile-breadcrumb{display:none!important}
.hero{padding:34px 0}
.hero-card{
	background:linear-gradient(140deg,#eff6ff,#fff);
	border:1px solid #bfdbfe;
	border-radius:18px;
	padding-top:24px;
	padding-right:24px;
	padding-left:24px;
	padding-bottom:16px;
	box-shadow:0 10px 28px rgba(37,99,235,.12);
}
/* Danh sách villa + trang yêu cầu — khoảng đáy body ($my_admin_body_pb trong villa.php / requests.php; nhịp 24px như section portal) */
body.my-admin-root.my-admin-body-pb{
	padding-bottom:24px;
}
/* Trang yêu cầu — ghi chú chủ villa/homestay: khoảng đáy vừa phải */
body.my-admin-root p.requests-owner-notice{
	margin:12px 0 0;
	padding-bottom:24px;
	font-size:14px;
	line-height:1.45;
	color:#64748b;
	max-width:720px;
}
/* Danh sách villa — dòng Hiển thị x / y villa (cùng nhịp padding-bottom) */
body.my-admin-root .villa-list-footer .villa-list-showing{
	padding-bottom:24px;
	font-size:14px;
	line-height:1.45;
}
/* Card tìm kiếm / bộ lọc đầu trang: container rộng full vùng nội dung (không giới hạn 1180px) */
body.my-admin-root:not(.my-admin-home) section.hero > .container,
body.my-admin-root:not(.my-admin-home) section.section.subs-portal-title-hero > .container,
body.my-admin-root:not(.my-admin-home) section.section:has(> .container > .hero-card .search-grid) > .container,
body.my-admin-root:not(.my-admin-home) section.section:has(> .container > .hero-card form.villa-filter-row) > .container,
body.my-admin-root:not(.my-admin-home) section.section.subscriber-requests-hero > .container{
	max-width:100%!important;
	width:100%!important;
	padding-left:16px!important;
	padding-right:16px!important;
	box-sizing:border-box;
}
/* Portal — Yêu cầu / Yêu thích: hero tiêu đề cùng cấu trúc contri (.contri-my-villas-hero: vỏ padding 0, nội dung trong .subs-req-title-row) */
body.my-admin-root .subscriber-requests-hero .hero-card{
	margin:0 0 16px;
	padding:0!important;
	border:1px solid #dbe4f0;
	border-radius:14px;
	background:linear-gradient(135deg,#eff6ff 0%,#f8fafc 45%,#fff 100%);
	box-shadow:0 4px 18px rgba(15,23,42,.06);
	overflow:hidden;
	box-sizing:border-box;
}
body.my-admin-root .subscriber-requests-hero .subs-req-title-row{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	flex-wrap:wrap;
	margin:0;
	padding:20px 24px;
}
body.my-admin-root .subscriber-requests-hero .subs-req-page-title{
	display:flex;
	align-items:center;
	gap:10px;
	flex:1;
	min-width:0;
	margin:0!important;
	font-family:Arial,sans-serif!important;
	font-size:24px!important;
	font-weight:700!important;
	line-height:1.25!important;
	letter-spacing:normal!important;
	color:#0f172a!important;
}
body.my-admin-root .subscriber-requests-hero .subs-req-page-title-text{
	min-width:0;
}
body.my-admin-root .subscriber-requests-hero .subs-req-page-title-ico{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	font-size:28px;
	line-height:1;
	flex-shrink:0;
	filter:drop-shadow(0 2px 4px rgba(37,99,235,.12));
}
@media (max-width:640px){
	body.my-admin-root .subscriber-requests-hero .subs-req-title-row{
		padding:14px 16px;
	}
	body.my-admin-root .subscriber-requests-hero .subs-req-page-title{
		font-size:17px!important;
		line-height:1.25!important;
		gap:6px;
	}
	body.my-admin-root .subscriber-requests-hero .subs-req-page-title-text{
		white-space:nowrap;
		overflow:hidden;
		text-overflow:ellipsis;
	}
	body.my-admin-root .subscriber-requests-hero .subs-req-page-title-ico{
		font-size:20px;
	}
}
/* Portal subscriber (subs) + dashboard contri — nhịp section theo .contri-my-villas-section (26px / 24px) */
body.my-admin-root:not(.my-admin-home) section.section.subscriber-requests-hero:not(.subscriber-requests-hero--contributor){
	padding-top:26px;
	padding-bottom:0;
}
body.my-admin-root section.section.subs-portal-title-hero:not(.subscriber-profile-page){
	padding-top:26px;
	padding-bottom:0;
}
body.my-admin-root section.subscriber-dashboard-section.section{
	padding-top:26px;
	padding-bottom:24px;
}
body.my-admin-root section.subscriber-profile-page.section.subs-portal-title-hero{
	padding-top:26px;
	padding-bottom:24px;
}
body.my-admin-root .subscriber-requests-hero ~ section.admin-req-list-section.section,
body.my-admin-root section.section.my-reviews-page,
body.my-admin-root section.section.my-favorites-page{
	padding-bottom:24px;
}
/* Đánh giá của tôi — hero tiêu đề giống .contri-my-villas-hero (vỏ 0 + khối trong 20px 24px) */
body.my-admin-root section.subs-portal-title-hero:not(.subscriber-profile-page) > .container > .hero-card{
	margin:0 0 16px;
	padding:0!important;
	border:1px solid #dbe4f0;
	border-radius:14px;
	background:linear-gradient(135deg,#eff6ff 0%,#f8fafc 45%,#fff 100%);
	box-shadow:0 4px 18px rgba(15,23,42,.06);
	overflow:hidden;
	box-sizing:border-box;
}
body.my-admin-root section.subs-portal-title-hero:not(.subscriber-profile-page) > .container > .hero-card > div:first-child{
	margin:0!important;
	padding:20px 24px!important;
}
@media (max-width:640px){
	body.my-admin-root section.subs-portal-title-hero:not(.subscriber-profile-page) > .container > .hero-card > div:first-child{
		padding:14px 16px!important;
	}
}
/* Contributor — Yêu cầu của tôi: hero nền full chiều ngang viewport */
body.my-admin-root:not(.my-admin-home) section.section.subscriber-requests-hero.subscriber-requests-hero--contributor{
	width:100vw;
	max-width:100vw;
	margin-left:calc(50% - 50vw);
	margin-right:calc(50% - 50vw);
	box-sizing:border-box;
	padding-top:26px;
	padding-bottom:0;
	padding-left:0;
	padding-right:0;
	background:transparent;
	border-bottom:none;
}
body.my-admin-root:not(.my-admin-home) section.section.subscriber-requests-hero.subscriber-requests-hero--contributor > .container{
	max-width:100%!important;
	width:100%!important;
	margin:0 auto;
	padding-left:16px!important;
	padding-right:16px!important;
	box-sizing:border-box;
}
.search-grid{display:grid;grid-template-columns:2fr 2fr 1fr auto;gap:10px;align-items:end}
.search-grid-requests{grid-template-columns:1.8fr 1.8fr 1fr 1fr .9fr auto}
/* Trang danh sách villa (hero): tiêu đề + cỡ chữ vùng search */
section.hero .villa-list-hero-card .villa-hero-title{
	margin:0 0 10px;
	font-size:1.2rem;
	line-height:1.25;
	display:inline-flex;
	align-items:center;
	gap:8px;
	min-width:0;
}
section.hero .villa-list-hero-card .villa-hero-title-ico{
	font-size:1.05em;
	line-height:1;
	flex-shrink:0;
}
section.hero .villa-list-hero-card .villa-hero-title-text{
	min-width:0;
}
section.hero .villa-list-hero-card .search-grid.search-grid-villa-hero .input,
section.hero .villa-list-hero-card .search-grid.search-grid-villa-hero .select{
	font-size:13px;
}
body.my-admin-root section.hero .villa-list-hero-card .search-grid.search-grid-villa-hero .input,
body.my-admin-root section.hero .villa-list-hero-card .search-grid.search-grid-villa-hero .select{
	font-size:13px!important;
}
section.hero .hero-quick-select{
	display:flex;
	align-items:center;
	gap:8px;
	flex-wrap:wrap;
	margin:6px 0 0;
}
section.hero .hero-quick-select-label{font-weight:600}
section.hero .hero-quick-select-tag{margin-right:0}
@media (max-width: 767px){
	section.hero .search-grid.search-grid-villa-hero{
		grid-template-columns:1fr 1fr 1fr!important;
		gap:8px;
		align-items:end;
	}
	section.hero .search-field-hero-quick{
		grid-column:1 / -1;
	}
	body.my-admin-root section.hero .search-grid .input,
	body.my-admin-root section.hero .search-grid .select{
		font-size:13px!important;
		line-height:1.15!important;
	}
	body.my-admin-root section.hero .search-grid .hero-quick-select{
		font-size:12px!important;
		line-height:1.15!important;
	}
	body.my-admin-root section.hero .search-grid .hero-quick-select-label{
		font-size:12px!important;
	}
	body.my-admin-root section.hero .search-grid .hero-quick-select-tag{
		font-size:11px!important;
		padding:2px 6px!important;
	}
}
@media (min-width:768px){
	section.hero .villa-list-hero-card,
	section.hero .request-list-hero-card{
		display:flex;
		flex-direction:column;
		box-sizing:border-box;
	}
	section.hero .villa-list-hero-card #heroSearchForm,
	section.hero .request-list-hero-card #reqHeroSearchForm{
		margin-top:auto;
		width:100%;
	}
	section.hero .search-grid.search-grid-villa-hero{
		grid-template-columns:minmax(0,176px) minmax(0,200px) minmax(0,148px) minmax(120px,1fr);
		align-items:center;
		gap:10px;
		width:100%;
		max-width:100%;
	}
}
/* Danh sách villa / Yêu cầu thuê: nhãn Sắp xếp, Số dòng/trang — cùng trục với select 42px */
.request-toolbar-cluster > .meta,
#villa .villa-toolbar-cluster > label.meta{
	display:inline-flex;
	align-items:center;
	align-self:center;
	margin:0;
	padding:0;
	min-height:42px;
	font-weight:700;
	font-size:14px;
	line-height:1.2;
	color:#64748b;
	white-space:nowrap;
}
/* Trang Yêu cầu thuê: tiêu đề + Tạo yêu cầu; lưới Tỉnh/Khu vực + ngày + Chọn nhanh */
section.hero .request-hero-head{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	flex-wrap:nowrap;
	margin:0;
	min-width:0;
	width:100%;
}
section.hero .request-hero-title{
	margin:0;
	font-size:1.35rem;
	line-height:1.25;
	flex:1 1 auto;
	min-width:0;
	display:inline-flex;
	align-items:center;
	gap:8px;
}
section.hero .request-hero-title-ico{
	font-size:1.1em;
	line-height:1;
	flex-shrink:0;
}
section.hero .request-hero-title-text{
	min-width:0;
}
section.hero .request-hero-create-btn{
	flex-shrink:0;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	padding:10px 18px;
	border-radius:10px;
	font-weight:600;
	font-size:14px;
	line-height:1.2;
	white-space:nowrap;
	border:1px solid #1d4ed8;
	background:linear-gradient(180deg,#3b82f6,#2563eb);
	color:#fff;
	box-shadow:0 2px 10px rgba(37,99,235,.28);
}
section.hero .request-hero-create-btn:hover{
	background:linear-gradient(180deg,#2563eb,#1d4ed8);
	border-color:#1e40af;
	color:#fff;
}
section.hero .request-hero-create-btn:focus-visible{
	outline:2px solid #93c5fd;
	outline-offset:2px;
}
section.hero .request-hero-create-ico{
	font-size:18px;
	font-weight:700;
	line-height:1;
	color:#fff;
}
section.hero .search-field-requests-quick{min-width:0}
@media (max-width:767px){
	section.hero .request-hero-create-label{display:none!important;}
	section.hero .request-hero-create-btn{
		padding:0;
		width:44px;
		height:44px;
		min-width:44px;
		min-height:44px;
		border-radius:999px;
		gap:0;
	}
	section.hero .request-hero-create-ico{font-size:22px;}
	body.my-admin-root section.hero .search-grid.request-hero-search-grid{
		grid-template-columns:1fr 1fr!important;
		gap:8px;
		align-items:end;
	}
	body.my-admin-root section.hero .search-field-requests-quick{
		grid-column:1 / -1;
	}
}
@media (min-width:768px){
	body.my-admin-root section.hero .search-grid.request-hero-search-grid{
		grid-template-columns:minmax(0,176px) minmax(0,200px) minmax(0,128px) minmax(0,128px) minmax(160px,1fr);
		align-items:center;
		gap:10px;
		width:100%;
		max-width:100%;
	}
}
.input,.select,textarea{width:100%;border:1px solid #cbd5e1;border-radius:10px;padding:10px 12px;background:#fff}
.search-grid .btn-primary{height:42px}
.search-field{min-width:0}
.search-action{display:flex;justify-content:flex-end}
.search-action .btn{min-width:140px}
.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.card-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;box-shadow:0 4px 12px rgba(15,23,42,.06)}
.card img{width:100%;height:180px;object-fit:cover}
.card-body{padding:14px}
.card-body h3{
	font-size:1.1rem!important;
	line-height:1.3!important;
}
.meta{color:#64748b;font-size:14px}
.tag{display:inline-block;background:#e2e8f0;border-radius:999px;padding:3px 8px;font-size:12px;margin-right:6px}
/* Card icon colors (desktop + mobile) */
body.my-admin-root .card .meta svg{color:#475569!important;flex-shrink:0}
body.my-admin-root .card .meta:nth-of-type(2) svg{color:#f97316!important}
body.my-admin-root .card .tag:nth-child(1) svg{color:#f59e0b!important}
body.my-admin-root .card .tag:nth-child(2) svg{color:#0ea5e9!important}
body.my-admin-root .card .tag:nth-child(3) svg{color:#6366f1!important}
body.my-admin-root .card .tag:nth-child(4) svg{color:#64748b!important}
.rent-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.rent-item{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:14px}
.notice{padding:10px 12px;border-radius:10px;margin:10px 0}
.ok{background:#ecfdf5;color:#166534;border:1px solid #86efac}
.err{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}
.footer{background:#0f172a;color:#e2e8f0;margin-top:34px}
.footer .container{padding:18px 16px}
.filter-bar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.villa-filter-row{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:10px;align-items:end;width:100%}
.villa-filter-row .btn{min-width:120px}
.floating-filter{
	display:none;
	position:fixed;
	bottom:24px;
	right:24px;
	width:52px;
	height:52px;
	border-radius:999px;
	border:none;
	background:#2563eb;
	color:#fff;
	font-size:22px;
	line-height:1;
	z-index:900;
	align-items:center;
	justify-content:center;
	cursor:pointer;
	box-shadow:0 8px 22px rgba(37,99,235,.35);
	transition:opacity .2s ease, transform .2s ease;
}
@media (min-width:768px){
	.floating-filter.is-visible{
		display:flex;
	}
}
.search-popup{display:none;position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(640px,calc(100vw - 24px));max-height:calc(100vh - 40px);background:#fff;z-index:1300;padding:16px;overflow:auto;border-radius:14px;box-shadow:0 24px 50px rgba(2,6,23,.3);border:1px solid #e2e8f0}
.search-popup.show{display:block}
.form-label{display:block;font-size:13px;font-weight:700;color:#334155;margin-bottom:6px}
.form-group{display:grid;gap:6px}
.call-action{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;border:1px solid #86efac;background:#ecfdf5;color:#15803d;font-size:12px;font-weight:600}
.call-label{display:none!important}
.home-head-banner{padding-top:8px;padding-bottom:4px}
.home-head-banner .container{max-width:100%;width:100%;padding-left:16px;padding-right:16px}
.home-head-banner-card{
	display:grid;
	grid-template-columns:minmax(0,56%) minmax(0,44%);
	align-items:center;
	gap:18px;
	padding:10px 0;
}
.home-head-banner-text h1{
	margin:0 0 8px;
	font-size:26px;
	line-height:1.25;
	color:#0f172a;
	text-transform:uppercase!important;
}
.home-head-banner-text{
	padding-left:28px;
}
.home-head-banner-text p{
	margin:0;
	font-size:26px;
	line-height:1.25;
	color:#2563eb!important;
	font-weight:600;
	text-transform:uppercase!important;
}
.home-head-banner-image img{
	display:block;
	width:100%;
	height:auto;
	max-height:180px;
	object-fit:contain;
}
.home-top-row{padding-top:18px;padding-bottom:10px}
.home-top-row .container{max-width:100%;width:100%;padding-left:16px;padding-right:16px}
.home-top-row-grid{display:grid;grid-template-columns:minmax(0,60%) minmax(0,40%);gap:14px;align-items:stretch}
.home-top-row-item{display:flex}
.home-top-row-item .home-equal-card{
	width:100%;
	height:100%;
	display:flex;
	flex-direction:column;
	justify-content:flex-start;
	padding:14px!important;
}

@media (max-width: 991px){
	.search-grid{grid-template-columns:1fr 1fr}
	.search-grid-requests{grid-template-columns:1fr 1fr}
	.villa-filter-row{grid-template-columns:1fr 1fr}
	.card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
	.rent-list{grid-template-columns:1fr 1fr}
	.home-top-row-grid{grid-template-columns:1fr}
	.home-head-banner-card{grid-template-columns:1fr}
}
@media (max-width: 767px){
	.nav-menu .nav-link-home,
	.nav-menu .nav-link-villa,
	.nav-menu .nav-link-requests,
	.nav-menu .nav-link-blog{display:none}
	.menu-toggle{display:block}
	.mobile-menu{display:block}
	.header-inner{
		min-height:70px;
		height:auto;
		padding-top:3px;
		padding-bottom:3px;
		position:relative;
	}
	.header-inner > div:first-child{
		flex:0 0 auto;
		display:flex;
		align-items:center;
		justify-content:flex-start;
		position:static;
	}
	.header-inner > div:first-child .menu-toggle{
		position:relative;
		left:auto;
		transform:translateY(8px);
	}
	.header-inner .logo{
		position:absolute;
		left:50%;
		transform:translateX(-50%);
	}
	.logo img{
		height:44px;
		max-width:none;
	}
	.actions{
		transform:translateY(-2px);
		margin-top:0!important;
		min-width:0;
		gap:6px;
		margin-left:auto;
	}
	.actions .lang-switch{display:none!important}
	.actions .auth-btn{
		width:42px!important;
		min-width:42px!important;
		height:42px!important;
		min-height:42px!important;
		padding:0!important;
		border-radius:999px!important;
	}
	.actions .auth-btn .auth-btn-label{display:none}
	.actions .auth-btn .auth-btn-icon{font-size:20px}
	.actions .auth-btn-login,
	.actions .auth-btn-register,
	.actions .lang-switch{
		transform:none!important;
	}
	.actions .auth-btn-register{display:none!important}
	body.my-admin-root .actions .auth-btn-register{display:none!important}
	.actions .user-menu{display:block}
	.actions .user-pill{
		width:42px!important;
		min-width:42px!important;
		height:42px!important;
		padding:0!important;
		gap:0!important;
		justify-content:center!important;
		border-radius:999px!important;
	}
	.actions .user-pill .avatar{
		width:30px!important;
		height:30px!important;
		font-size:13px!important;
		flex:0 0 30px!important;
		border-radius:50%!important;
		overflow:hidden!important;
		line-height:0!important;
	}
	.actions .user-pill .avatar.avatar-image img{
		width:100%!important;
		height:100%!important;
		object-fit:cover!important;
		object-position:center!important;
		border-radius:50%!important;
		display:block!important;
	}
	.actions .user-pill span:last-child{
		display:none!important;
	}
	.mobile-menu .mobile-lang-switch{
		display:inline-flex;
		margin:6px 0 0;
	}
	.view-all-btn{
		width:42px!important;
		min-width:42px!important;
		height:42px!important;
		min-height:42px!important;
		padding:0!important;
		border-radius:999px!important;
	}
	.view-all-btn .view-all-label{display:none}
	.view-all-btn .view-all-icon{font-size:18px}
	body.my-admin-home .top-villa-view-all,
	body.my-admin-home .section-head .top-villa-view-all{
		display:none!important;
		visibility:hidden!important;
		width:0!important;
		min-width:0!important;
		height:0!important;
		overflow:hidden!important;
		padding:0!important;
		margin:0!important;
		border:none!important;
	}
	.top-villa-view-all-mobile-wrap{
		display:flex;
		justify-content:center;
		margin-top:10px;
	}
	.top-villa-view-all-mobile{
		width:auto!important;
		min-width:126px!important;
		padding:0 14px!important;
		border-radius:10px!important;
	}
	.top-villa-view-all-mobile .view-all-label{display:inline}
	.top-villa-view-all-mobile .view-all-icon{font-size:16px}
	.request-view-all-btn{
		width:auto!important;
		min-width:126px!important;
		padding:0 14px!important;
		border-radius:10px!important;
	}
	.request-view-all-btn .view-all-label{display:inline}
	.request-view-all-btn .view-all-icon{font-size:16px}
	.mobile-menu .nav-link{display:block;width:100%;margin-bottom:6px}
	.mobile-breadcrumb{display:block}
	/* Subscriber portal: một dòng điều hướng gọn trên mobile (ẩn breadcrumb dạng desktop, hiện strip mobile). */
	body.my-admin-root nav.admin-manage-breadcrumb.subscriber-portal-breadcrumb{display:none!important}
	body.my-admin-root nav.admin-manage-breadcrumb.subscriber-portal-breadcrumb + .mobile-breadcrumb{display:block!important}
	.search-grid{display:grid;grid-template-columns:1fr}
	.search-grid .search-action{
		justify-content:center;
	}
	.search-grid .search-action .btn{
		min-width:160px;
	}
	.hero-card{
		padding-top:18px;
		padding-right:18px;
		padding-left:18px;
		padding-bottom:12px;
	}
	body.my-admin-root:not(.my-admin-home) .hero{
		padding-bottom:4px;
	}
	body.my-admin-root:not(.my-admin-home) .hero-card{
		padding-bottom:5px;
	}
	.card-grid,.rent-list{grid-template-columns:1fr}
	.floating-filter{
		display:flex;
		width:40px;
		height:40px;
		right:12px;
		bottom:14px;
		font-size:16px;
		background:#1d4ed8;
		color:#eaf2ff;
		box-shadow:0 6px 16px rgba(29,78,216,.28);
	}
	.search-popup{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}
	body.my-admin-home .hero .search-grid{
		grid-template-columns:1fr 1fr 1fr;
		gap:8px;
	}
	body.my-admin-home .hero .search-grid > .search-field:nth-child(3){
		grid-column:auto;
	}
	body.my-admin-home .hero .search-grid > .search-action{
		grid-column:1 / -1;
	}
	body.my-admin-root:not(.my-admin-home) .hero .search-grid{
		grid-template-columns:1fr 1fr 1fr;
		gap:8px;
	}
	body.my-admin-root:not(.my-admin-home) .hero .search-grid > .search-field:nth-child(3){
		grid-column:auto;
	}
	body.my-admin-root:not(.my-admin-home) .hero .search-grid > .search-action{
		grid-column:1 / -1;
	}
	body.my-admin-home .home-top-row .search-grid{
		grid-template-columns:1fr 1fr 1fr!important;
		gap:8px!important;
	}
	body.my-admin-home .home-top-row .search-grid > .search-field:nth-child(3){
		grid-column:auto!important;
	}
	body.my-admin-home .home-top-row .search-grid > .search-action{
		grid-column:1 / -1!important;
	}
}

/* Isolate my-admin styles from theme/plugin CSS loaded via wp_head/wp_footer */
body.my-admin-root{
	margin:0!important;
	font-family:Arial,sans-serif!important;
	background:#f8fafc!important;
	color:#0f172a!important;
}
body.my-admin-root *,
body.my-admin-root *::before,
body.my-admin-root *::after{
	box-sizing:border-box;
}
body.my-admin-root a{
	text-decoration:none!important;
	color:inherit!important;
}
body.my-admin-root .admin-manage-breadcrumb a,
body.my-admin-root .mobile-breadcrumb a{
	color:#1d4ed8!important;
	text-decoration:underline!important;
	text-decoration-color:transparent!important;
	text-underline-offset:2px!important;
	font-weight:600!important;
}
body.my-admin-root .admin-manage-breadcrumb a:hover,
body.my-admin-root .mobile-breadcrumb a:hover{
	color:#2563eb!important;
	text-decoration-color:#93c5fd!important;
}
body.my-admin-root .admin-manage-breadcrumb a:focus-visible,
body.my-admin-root .mobile-breadcrumb a:focus-visible{
	outline:2px solid #2563eb!important;
	outline-offset:2px!important;
	border-radius:4px!important;
}
body.my-admin-root .admin-manage-breadcrumb .admin-bc-current{
	color:#475569!important;
	font-weight:600!important;
	cursor:default!important;
	text-decoration:none!important;
}
body.my-admin-root .mobile-breadcrumb > .container > span:not(.sep){
	color:#475569!important;
	font-weight:600!important;
}
body.my-admin-root .btn:not(.btn-villa-detail){
	border:none!important;
	border-radius:10px!important;
	padding:10px 14px!important;
	font-weight:600!important;
	cursor:pointer!important;
	text-transform:none!important;
	letter-spacing:normal!important;
}
body.my-admin-root .input,
body.my-admin-root .select,
body.my-admin-root textarea,
body.my-admin-root input,
body.my-admin-root select{
	font-family:Arial,sans-serif!important;
	font-size:14px!important;
	line-height:1.4!important;
}
body.my-admin-root .input,
body.my-admin-root .select,
body.my-admin-root textarea:not(#villa_note){
	width:100%!important;
	border:1px solid #cbd5e1!important;
	border-radius:10px!important;
	padding:10px 12px!important;
	background:#fff!important;
	color:#0f172a!important;
}

/* Hard reset for my-admin to match original UI */
body.my-admin-root{
	font-size:16px!important;
	line-height:1.4!important;
	-webkit-font-smoothing:antialiased!important;
	-moz-osx-font-smoothing:grayscale!important;
}
body.my-admin-root h1,
body.my-admin-root h2,
body.my-admin-root h3,
body.my-admin-root h4,
body.my-admin-root h5,
body.my-admin-root h6{
	margin:0 0 .5rem 0!important;
	font-family:Arial,sans-serif!important;
	font-weight:700!important;
	line-height:1.25!important;
	color:#0f172a!important;
	text-transform:none!important;
	letter-spacing:normal!important;
}
body.my-admin-root h2{
	font-size:1.3rem!important;
}
body.my-admin-root p,
body.my-admin-root span,
body.my-admin-root div,
body.my-admin-root label,
body.my-admin-root td,
body.my-admin-root th{
	font-family:Arial,sans-serif!important;
	color:inherit!important;
}
body.my-admin-root button,
body.my-admin-root input[type="button"],
body.my-admin-root input[type="submit"]{
	appearance:none!important;
	-webkit-appearance:none!important;
	font-family:Arial,sans-serif!important;
	font-size:14px!important;
	line-height:1.2!important;
	padding:10px 14px!important;
	border-radius:10px!important;
	border:none!important;
	box-shadow:none!important;
	text-transform:none!important;
	letter-spacing:normal!important;
}
body.my-admin-root button.villa-manager-status-toggle{
	padding:0!important;
	min-width:0!important;
	min-height:0!important;
	border-radius:0!important;
	font-size:0!important;
	line-height:0!important;
	background:transparent!important;
	box-shadow:none!important;
}
body.my-admin-root .btn,
body.my-admin-root a.btn{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	gap:6px!important;
	height:42px!important;
	min-height:42px!important;
	padding:0 14px!important;
	text-decoration:none!important;
	white-space:nowrap!important;
}
body.my-admin-root .btn.btn-primary{
	background:#2563eb!important;
	color:#fff!important;
}
body.my-admin-root .btn.btn-primary:hover{
	background:#1d4ed8!important;
}
body.my-admin-root .btn.btn-outline{
	background:#fff!important;
	color:#0f172a!important;
	border:1px solid #cbd5e1!important;
}
body.my-admin-root .btn.btn-villa-detail,
body.my-admin-root a.btn.btn-villa-detail,
html body.my-admin-root .card-grid .card-body a.btn.btn-villa-detail,
html body.my-admin-root .card .card-body a.btn.btn-villa-detail,
html body.my-admin-root .hot-villas-slider .card-body a.btn.btn-villa-detail,
html body.my-admin-root .danang-top-villas-slider .card-body a.btn.btn-villa-detail,
html body.my-admin-root .villa-list-grid .card-body a.btn.btn-villa-detail{
	cursor:pointer!important;
	background:#fff!important;
	background-color:#fff!important;
	color:#000!important;
	-webkit-text-fill-color:#000!important;
	border:1px solid #cbd5e1!important;
	border-width:1px!important;
	border-style:solid!important;
	border-color:#cbd5e1!important;
	font-weight:700!important;
	border-radius:10px!important;
	transition:background-color .15s ease,color .15s ease,border-color .15s ease!important;
}
body.my-admin-root .btn.btn-villa-detail:hover,
body.my-admin-root a.btn.btn-villa-detail:hover,
html body.my-admin-root .card-grid .card-body a.btn.btn-villa-detail:hover,
html body.my-admin-root .card .card-body a.btn.btn-villa-detail:hover,
html body.my-admin-root .hot-villas-slider .card-body a.btn.btn-villa-detail:hover,
html body.my-admin-root .danang-top-villas-slider .card-body a.btn.btn-villa-detail:hover,
html body.my-admin-root .villa-list-grid .card-body a.btn.btn-villa-detail:hover{
	background:#e5e5e5!important;
	background-color:#e5e5e5!important;
	color:#2563eb!important;
	-webkit-text-fill-color:#2563eb!important;
	border-color:#cbd5e1!important;
}
body.my-admin-root a.btn.btn-villa-detail:focus-visible,
html body.my-admin-root .card-body a.btn.btn-villa-detail:focus-visible{
	outline:2px solid #000!important;
	outline-offset:2px!important;
}
body.my-admin-root .user-pill{
	display:inline-flex!important;
	align-items:center!important;
	gap:8px!important;
	height:42px!important;
	padding:4px 12px!important;
	border:1px solid #cbd5e1!important;
	border-radius:999px!important;
	background:#fff!important;
	color:#0f172a!important;
	font-weight:600!important;
}
body.my-admin-root .avatar{
	width:30px!important;
	height:30px!important;
	font-size:13px!important;
	flex:0 0 30px!important;
	border-radius:50%!important;
	overflow:hidden!important;
	line-height:0!important;
}
body.my-admin-root .avatar.avatar-image img{
	width:100%!important;
	height:100%!important;
	object-fit:cover!important;
	object-position:center!important;
	border-radius:50%!important;
	display:block!important;
}
body.my-admin-root .nav-link:hover,
body.my-admin-root .nav-link:focus,
body.my-admin-root .nav-link:focus-visible{
	background:#bfdbfe!important;
	color:#1e3a8a!important;
}
body.my-admin-root .nav-link.active{
	background:#bfdbfe!important;
	color:#1e3a8a!important;
	padding:12px!important;
}
body.my-admin-root .user-menu-dropdown a:hover,
body.my-admin-root .user-menu-dropdown a:focus,
body.my-admin-root .user-menu-dropdown a:focus-visible,
body.my-admin-root .user-menu-dropdown a.active{
	background:#bfdbfe!important;
	color:#1e3a8a!important;
}
body.my-admin-root select,
body.my-admin-root input[type="text"],
body.my-admin-root input[type="number"],
body.my-admin-root input[type="email"],
body.my-admin-root textarea:not(#villa_note){
	appearance:none!important;
	-webkit-appearance:none!important;
	background:#fff!important;
	border:1px solid #cbd5e1!important;
	border-radius:10px!important;
	box-shadow:none!important;
	outline:none!important;
}
body.my-admin-root .input,
body.my-admin-root .select,
body.my-admin-root input[type="text"],
body.my-admin-root input[type="number"],
body.my-admin-root input[type="email"],
body.my-admin-root select{
	height:42px!important;
	min-height:42px!important;
	line-height:20px!important;
	padding-top:10px!important;
	padding-bottom:10px!important;
}
body.my-admin-root select,
body.my-admin-root .select{
	padding-right:36px!important;
	background-image:linear-gradient(45deg,transparent 50%,#64748b 50%),linear-gradient(135deg,#64748b 50%,transparent 50%)!important;
	background-position:calc(100% - 18px) 17px,calc(100% - 12px) 17px!important;
	background-size:6px 6px,6px 6px!important;
	background-repeat:no-repeat!important;
}
body.my-admin-root select:disabled,
body.my-admin-root select.select:disabled{
	opacity:.55!important;
	cursor:not-allowed!important;
	background-color:#f1f5f9!important;
	color:#64748b!important;
}
body.my-admin-root textarea:not(#villa_note){
	height:auto!important;
	line-height:1.4!important;
}
/* Unified popup chrome */
body.my-admin-root .search-popup .popup-header,
body.my-admin-root .villa-review-popup .popup-header{
	display:flex;
	justify-content:space-between;
	align-items:center;
	gap:10px;
	margin:-16px -16px 12px -16px;
	padding:10px 14px;
	border-bottom:1px solid #e2e8f0;
	background:#f8fafc;
}
body.my-admin-root .search-popup .popup-header h3,
body.my-admin-root .villa-review-popup .popup-header h3{
	margin:0!important;
}
body.my-admin-root .popup-close-x{
	border:none;
	background:transparent;
	color:#dc2626;
	font-size:18px;
	line-height:1;
	padding:4px 8px;
	cursor:pointer;
}
body.my-admin-root .search-popup .popup-footer,
body.my-admin-root .villa-review-popup .popup-footer{
	display:flex;
	justify-content:center;
	gap:8px;
	flex-wrap:wrap;
	margin-top:12px;
	padding-top:12px;
	border-top:1px solid #e2e8f0;
}
body.my-admin-root .search-popup .popup-footer .btn.btn-outline,
body.my-admin-root .villa-review-popup .popup-footer .btn.btn-outline{
	background:#fff!important;
}
body.my-admin-root .search-popup .popup-value-box,
body.my-admin-root .villa-review-popup .popup-value-box{
	display:block;
	width:100%;
	min-height:40px;
	padding:10px 12px;
	border:1px solid #dbe4f0;
	border-radius:10px;
	background:#f8fafc;
	color:#0f172a;
	line-height:1.45;
	word-break:break-word;
}
/* Keep rental request note fields visually at 2 rows */
body.my-admin-root #request-note,
body.my-admin-root #admin-request-edit-note{
	min-height:0!important;
	height:calc(2.8em + 20px)!important;
	max-height:calc(2.8em + 20px)!important;
	line-height:1.4!important;
	resize:none!important;
	overflow:auto!important;
}
body.my-admin-root table{
	border-collapse:collapse!important;
	border-spacing:0!important;
	font-family:Arial,sans-serif!important;
}

/* Bảng dữ liệu admin: zebra + highlight khi rê chuột hoặc focus trong dòng */
body.my-admin-root table.my-admin-data-grid > tbody > tr.my-admin-data-row:nth-child(odd) > td{
	background-color:#fff!important;
}
body.my-admin-root table.my-admin-data-grid > tbody > tr.my-admin-data-row:nth-child(even) > td{
	background-color:#f8fafc!important;
}
body.my-admin-root table.my-admin-data-grid > tbody > tr.my-admin-data-row:hover > td,
body.my-admin-root table.my-admin-data-grid > tbody > tr.my-admin-data-row:focus-within > td{
	background-color:#eef2ff!important;
}
body.my-admin-root table.my-admin-data-grid > tbody > tr.my-admin-data-row:hover > td:first-child,
body.my-admin-root table.my-admin-data-grid > tbody > tr.my-admin-data-row:focus-within > td:first-child{
	box-shadow:inset 3px 0 0 #6366f1!important;
}

/* Trang tổng quan quản trị (villa-manage?view=dashboard): khoảng trên sau header/breadcrumb */
body.my-admin-root .admin-dashboard-section.section{
	padding-top:26px;
}
body.my-admin-root .admin-villa-form-section--create.section{
	padding-top:26px;
}
body.my-admin-root .contributor-portal-page-pad.section{
	padding-top:26px;
}
/* Lưới card admin: xen kẽ nền + highlight hover / focus */
body.my-admin-root .my-admin-cards-grid > .my-admin-card-row:nth-child(odd){
	background-color:#fff!important;
}
body.my-admin-root .my-admin-cards-grid > .my-admin-card-row:nth-child(even){
	background-color:#f8fafc!important;
}
body.my-admin-root .my-admin-cards-grid > .my-admin-card-row:hover,
body.my-admin-root .my-admin-cards-grid > .my-admin-card-row:focus-within{
	background-color:#eef2ff!important;
	outline:2px solid #6366f1!important;
	outline-offset:2px!important;
	border-radius:10px!important;
}

/* Trang chủ: giảm ~1/2 khoảng cách giữa các khối và giữa các card slider */
body.my-admin-home .section{
	padding-top:13px;
	padding-bottom:13px;
}
body.my-admin-home .hero{
	padding-top:17px;
	padding-bottom:8px;
}
body.my-admin-home .hero .hero-card,
body.my-admin-home #yeu-cau .hero-card{
	padding-bottom:12px;
}
body.my-admin-home #yeu-cau.section{
	padding-top:8px;
	padding-bottom:8px;
}
body.my-admin-home .hot-villas-slider,
body.my-admin-home .danang-top-villas-slider{
	gap:6px;
}
/* Desktop ≥992px: 5 card/hàng; tablet 768–991: 3 card (mobile giữ block ≤767px bên dưới) */
body.my-admin-home .hot-villas-slider .card,
body.my-admin-home .danang-top-villas-slider .card{
	flex:0 0 calc((100% - 24px) / 5);
	width:calc((100% - 24px) / 5);
}
@media (max-width: 991px) and (min-width: 768px){
	body.my-admin-home .hot-villas-slider .card,
	body.my-admin-home .danang-top-villas-slider .card{
		flex:0 0 calc((100% - 12px) / 3);
		width:calc((100% - 12px) / 3);
	}
}
@media (max-width: 767px){
	body.my-admin-home .hot-villas-slider,
	body.my-admin-home .danang-top-villas-slider{
		display:grid!important;
		grid-template-rows:repeat(2,minmax(0,1fr))!important;
		grid-auto-flow:column!important;
		grid-auto-columns:170px!important;
		align-items:stretch!important;
	}
	body.my-admin-home .hot-villas-slider .card,
	body.my-admin-home .danang-top-villas-slider .card{
		flex:initial!important;
		width:170px!important;
		max-width:170px!important;
	}
	body.my-admin-root .card-body h3{
		font-size:.8rem!important;
		line-height:1.25!important;
		min-height:2.5em!important;
		display:-webkit-box!important;
		-webkit-line-clamp:2!important;
		-webkit-box-orient:vertical!important;
		overflow:hidden!important;
		white-space:normal!important;
	}
	body.my-admin-root #similarVillasGrid .villa-similar-name{
		font-size:14px!important;
		line-height:1.3!important;
		min-height:2.6em!important;
		display:-webkit-box!important;
		-webkit-line-clamp:2!important;
		-webkit-box-orient:vertical!important;
		overflow:hidden!important;
		white-space:normal!important;
	}
	body.my-admin-home .hero{
		padding-top:12px;
		padding-bottom:6px;
	}
	body.my-admin-home .hero-card{
		padding:14px;
		border-radius:14px;
	}
	body.my-admin-home .hero .hero-card,
	body.my-admin-home #yeu-cau .hero-card{
		padding-bottom:8px;
	}
	body.my-admin-home #yeu-cau.section{
		padding-top:6px;
		padding-bottom:6px;
	}
	body.my-admin-home .section{
		padding-top:10px;
		padding-bottom:10px;
	}
	body.my-admin-home .section-head{
		flex-direction:column;
		align-items:flex-start;
		gap:10px;
	}
	body.my-admin-home .section-head > div:last-child{
		width:100%;
		display:flex!important;
		gap:8px;
		flex-wrap:nowrap;
	}
	body.my-admin-home .section-head > div:last-child .btn{
		flex:1 1 0;
		min-width:0;
		padding-left:10px!important;
		padding-right:10px!important;
	}
}

/* Mobile fallback: force better auto-responsive behavior */
@media (max-width: 767px){
	html, body{
		overflow-x:hidden!important;
	}
	body.my-admin-root .container{
		width:100%!important;
		max-width:100%!important;
		padding-left:12px!important;
		padding-right:12px!important;
	}
	body.my-admin-root .admin-manage-breadcrumb-inner{
		padding-left:12px!important;
		padding-right:12px!important;
	}
	body.my-admin-root img{
		max-width:100%!important;
		height:auto;
	}
	body.my-admin-root .hot-villas-slider .card img,
	body.my-admin-root .danang-top-villas-slider .card img,
	body.my-admin-root .villa-list-grid .card img,
	body.my-admin-root #similarVillasGrid .card img{
		height:100px!important;
		object-fit:cover!important;
	}
	body.my-admin-root .card-body{
		padding:10px!important;
	}
	body.my-admin-root .card .meta{
		font-size:11px!important;
		line-height:1.3!important;
	}
	body.my-admin-root .card .tag{
		font-size:10px!important;
		padding:2px 6px!important;
	}
	body.my-admin-root .hero-card,
	body.my-admin-root .card,
	body.my-admin-root .search-popup{
		max-width:100%!important;
	}
	body.my-admin-root .section-head{
		flex-wrap:wrap;
	}
	body.my-admin-home .request-home-head{
		flex-direction:column!important;
		align-items:flex-start!important;
	}
	body.my-admin-home .request-home-head .request-home-head-text,
	body.my-admin-home .request-home-head > .request-home-head-text:last-child{
		width:100%!important;
		max-width:100%!important;
		display:block!important;
		flex:0 0 100%!important;
	}
	body.my-admin-home .request-home-head .request-home-head-text h2,
	body.my-admin-home .request-home-head .request-home-head-text p{
		display:block!important;
		width:100%!important;
		white-space:normal!important;
		word-break:break-word!important;
	}
	body.my-admin-home .request-home-head .request-home-head-text .request-home-member-note{
		font-size:12px!important;
		line-height:1.35!important;
	}
	body.my-admin-home .request-home-head > .request-home-head-text > *{
		flex:0 0 100%!important;
	}
	body.my-admin-root .btn,
	body.my-admin-root a.btn{
		min-width:0!important;
	}
	body.my-admin-root .search-grid,
	body.my-admin-root .villa-filter-row{
		width:100%!important;
	}
	body.my-admin-root .search-grid > *,
	body.my-admin-root .villa-filter-row > *{
		min-width:0!important;
	}

	/* Force responsive for villa-detail action buttons */
	body.my-admin-root .villa-cart-actions .villa-cta{
		display:grid!important;
		gap:8px!important;
		width:100%!important;
		max-width:100%!important;
		padding-left:0!important;
		padding-right:0!important;
		margin-left:0!important;
		margin-right:0!important;
		box-sizing:border-box!important;
	}
	body.my-admin-root .villa-cart-actions{
		width:100%!important;
		flex:1 1 100%!important;
		align-self:stretch!important;
	}
	body.my-admin-root .villa-cart-actions .villa-cta-row{
		display:grid!important;
		gap:6px!important;
		width:100%!important;
		max-width:100%!important;
		padding-left:0!important;
		padding-right:0!important;
		margin-left:0!important;
		margin-right:0!important;
		box-sizing:border-box!important;
	}
	body.my-admin-root .villa-cart-actions .villa-cta-row-main{
		display:grid!important;
		grid-template-columns:repeat(3,minmax(0,1fr))!important;
		align-items:stretch!important;
		gap:6px!important;
		width:100%!important;
		max-width:100%!important;
	}
	body.my-admin-root .villa-cart-actions .villa-cta-row-main .btn,
	body.my-admin-root .villa-cart-actions .villa-cta-row-main a.btn{
		flex:initial!important;
		min-width:0!important;
		width:100%!important;
		box-sizing:border-box!important;
		font-size:12px!important;
		line-height:1.2!important;
		padding:0 6px!important;
		height:auto!important;
		min-height:36px!important;
		white-space:nowrap!important;
		overflow:hidden!important;
		text-overflow:ellipsis!important;
	}
	body.my-admin-root .villa-cart-actions .villa-cta-row-main .villa-cta-call,
	body.my-admin-root .villa-cart-actions .villa-cta-row-main .villa-cta-zalo{
		flex:initial!important;
		max-width:none!important;
	}
	body.my-admin-root .villa-cart-actions .villa-cta-row-main .villa-cta-messenger{
		flex:initial!important;
		min-width:0!important;
		max-width:none!important;
	}
	body.my-admin-root .villa-cart-actions .villa-cta-row-secondary{
		display:grid!important;
		grid-template-columns:repeat(2,minmax(0,1fr))!important;
	}
	body.my-admin-root .villa-cart-actions .villa-cta-row-secondary .btn,
	body.my-admin-root .villa-cart-actions .villa-cta-row-secondary form{
		width:100%!important;
		min-width:0!important;
		max-width:none!important;
	}
	body.my-admin-root .villa-cart-actions .villa-cta-row-secondary .btn{
		white-space:nowrap!important;
	}

	/* Villa tương tự — mobile: full ngang viewport + padding ~5px */
	body.my-admin-root #similarVillasCard{
		width:100vw!important;
		max-width:100vw!important;
		margin-left:calc(50% - 50vw)!important;
		margin-right:calc(50% - 50vw)!important;
		padding:5px!important;
		box-sizing:border-box!important;
		border-radius:0!important;
	}
	body.my-admin-root #similarVillasCard > h3{
		padding:6px 0 4px!important;
		margin:0!important;
	}
	body.my-admin-root #similarVillasGrid.similar-villas-pages{
		display:flex!important;
		flex-direction:row!important;
		flex-wrap:nowrap!important;
		align-items:stretch!important;
		gap:8px!important;
		width:100%!important;
		max-width:100%!important;
		box-sizing:border-box!important;
		overflow-x:auto!important;
		overflow-y:hidden!important;
		scroll-behavior:smooth!important;
		scroll-snap-type:x mandatory!important;
		-webkit-overflow-scrolling:touch;
		padding:0!important;
		-ms-overflow-style:none!important;
		scrollbar-width:none!important;
	}
	body.my-admin-root #similarVillasGrid.similar-villas-pages::-webkit-scrollbar{display:none!important}
	body.my-admin-root #similarVillasGrid.similar-villas-pages .similar-villas-page{
		display:grid!important;
		grid-template-columns:1fr 1fr!important;
		grid-template-rows:repeat(2,minmax(0,auto))!important;
		gap:12px!important;
		flex:0 0 100%!important;
		width:100%!important;
		min-width:100%!important;
		max-width:100%!important;
		box-sizing:border-box!important;
		scroll-snap-align:start!important;
	}
	body.my-admin-root #similarVillasGrid.similar-villas-pages .similar-villas-page .card{
		width:100%!important;
		max-width:none!important;
		min-width:0!important;
		height:auto!important;
	}
	body.my-admin-root #similarVillasCard .similar-villas-slider-wrap{
		padding:0!important;
		width:100%!important;
		box-sizing:border-box!important;
	}
	body.my-admin-root #similarVillasCard .similar-villas-nav.prev{
		left:5px!important;
		transform:translateY(-50%)!important;
	}
	body.my-admin-root #similarVillasCard .similar-villas-nav.next{
		right:5px!important;
		transform:translateY(-50%)!important;
	}
}

/* Force banner headline styles after global resets */
body.my-admin-root .home-head-banner .home-head-banner-text h1{
	font-size:22px!important;
	line-height:1.25!important;
	text-transform:uppercase!important;
	color:#0f172a!important;
	margin:0 0 8px!important;
	font-family:"Roboto Flex",sans-serif!important;
	letter-spacing:.2px!important;
	font-weight:700!important;
}
body.my-admin-root .home-head-banner .home-head-banner-text p{
	font-size:22px!important;
	line-height:1.25!important;
	text-transform:uppercase!important;
	color:#2563eb!important;
	margin:0!important;
	font-weight:700!important;
	font-family:"Roboto Flex",sans-serif!important;
	letter-spacing:.2px!important;
}
body.my-admin-root .home-head-banner .home-head-banner-image img{
	display:block!important;
	width:100%!important;
	height:auto!important;
	max-height:180px!important;
	object-fit:contain!important;
}
@media (max-width: 991px){
	body.my-admin-root .home-head-banner .home-head-banner-text h1,
	body.my-admin-root .home-head-banner .home-head-banner-text p{
		font-size:18px!important;
		line-height:1.25!important;
	}
}
@media (max-width: 767px){
	body.my-admin-root .home-head-banner .home-head-banner-text{
		padding-left:10px!important;
	}
	body.my-admin-root .home-head-banner .home-head-banner-text h1,
	body.my-admin-root .home-head-banner .home-head-banner-text p{
		font-size:15px!important;
		line-height:1.3!important;
	}
	body.my-admin-root .main-header .logo img{
		height:44px!important;
		width:auto!important;
		max-width:none!important;
	}
	body.my-admin-root .home-head-banner .home-head-banner-image img{
		max-height:90px!important;
	}
}

/* Portal: icon action buttons (Yêu cầu của tôi + Quản lý villa contributor) */
body.my-admin-root .admin-req-action-cell{
	display:inline-flex;
	gap:8px;
	align-items:center;
	justify-content:center;
	line-height:0;
	vertical-align:middle;
}
body.my-admin-root .admin-req-action-btn{
	box-sizing:border-box;
	width:40px;
	height:40px;
	min-width:40px;
	min-height:40px;
	padding:0;
	margin:0;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	border:1px solid #e2e8f0;
	border-radius:10px;
	background:#fff;
	color:#475569;
	cursor:pointer;
	line-height:0;
	text-decoration:none;
	flex-shrink:0;
	-webkit-appearance:none;
	appearance:none;
	font:inherit;
	vertical-align:middle;
	transition:border-color .15s ease,background .15s ease,color .15s ease;
}
body.my-admin-root a.admin-req-action-btn{
	cursor:pointer;
}
body.my-admin-root .admin-req-action-btn svg{
	width:20px;
	height:20px;
	display:block;
	flex-shrink:0;
}
body.my-admin-root .admin-req-action-btn .btn-ico{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	line-height:1;
	font-size:16px;
	flex-shrink:0;
}
body.my-admin-root .admin-req-action-btn:hover{
	border-color:#cbd5e1;
	background:#f8fafc;
	color:#1e40af;
}
body.my-admin-root .admin-req-action-btn.admin-req-action-detail{
	border-color:#bfdbfe!important;
	background:#eff6ff!important;
	color:#1d4ed8!important;
}
body.my-admin-root .admin-req-action-btn.admin-req-action-detail:hover{
	background:#dbeafe!important;
	border-color:#93c5fd!important;
	color:#1e40af!important;
}
body.my-admin-root .admin-req-action-btn.admin-req-action-comment{
	border-color:#c7d2fe!important;
	background:#eef2ff!important;
	color:#4338ca!important;
}
body.my-admin-root .admin-req-action-btn.admin-req-action-comment:hover{
	background:#e0e7ff!important;
	border-color:#a5b4fc!important;
	color:#3730a3!important;
}
body.my-admin-root .admin-req-action-btn.admin-req-action-edit{
	border-color:#fde68a!important;
	background:#fffbeb!important;
	color:#b45309!important;
}
body.my-admin-root .admin-req-action-btn.admin-req-action-edit:hover{
	background:#fef3c7!important;
	border-color:#fcd34d!important;
	color:#92400e!important;
}
body.my-admin-root .admin-req-action-btn.admin-req-action-delete{
	border-color:#fecaca!important;
	background:#fef2f2!important;
	color:#b91c1c!important;
}
body.my-admin-root .admin-req-action-btn.admin-req-action-delete:hover{
	background:#fee2e2!important;
	border-color:#fca5a5!important;
	color:#991b1b!important;
}
body.my-admin-root .admin-req-action-btn:focus-visible{
	outline:2px solid #6366f1;
	outline-offset:2px;
}

/* Villa manager / points admin — nhãn chờ duyệt cột trạng thái */
body.my-admin-root .villa-manager-status-pending-label{
	display:inline-block;
	padding:3px 10px;
	border-radius:999px;
	font-size:12px;
	font-weight:700;
	white-space:nowrap;
	background:#fef3c7;
	color:#92400e;
	border:1px solid #f59e0b;
}

/* Contributor — Quản lý villa (full width + hero + table) */
/* Cùng nhịp dọc với section tiêu đề portal (vd. Yêu thích: .section padding 26px 0) */
body.my-admin-root .contri-my-villas-section.section{
	padding-top:26px;
	padding-bottom:24px;
}
body.my-admin-root .contri-my-villas-container-full{
	max-width:100%!important;
	width:100%!important;
	padding-left:16px!important;
	padding-right:16px!important;
	box-sizing:border-box;
}
body.my-admin-root .contri-my-villas-hero{
	margin-bottom:16px;
	padding:0;
	border:1px solid #dbe4f0;
	border-radius:14px;
	background:linear-gradient(135deg,#eff6ff 0%,#f8fafc 45%,#fff 100%);
	box-shadow:0 4px 18px rgba(15,23,42,.06);
	overflow:hidden;
}
body.my-admin-root .contri-my-villas-hero-inner{
	display:flex;
	flex-wrap:nowrap;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	padding:20px 24px;
}
body.my-admin-root .contri-my-villas-hero-title{
	display:flex;
	align-items:center;
	gap:10px;
	margin:0!important;
	flex:1;
	min-width:0;
	font-family:Arial,sans-serif!important;
	font-size:24px!important;
	font-weight:700!important;
	line-height:1.25!important;
	letter-spacing:normal!important;
	color:#0f172a!important;
}
body.my-admin-root .contri-my-villas-hero-emoji{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	font-size:28px;
	line-height:1;
	flex-shrink:0;
	filter:drop-shadow(0 2px 4px rgba(37,99,235,.12));
}
body.my-admin-root .contri-my-villas-hero-title-text{
	min-width:0;
}
body.my-admin-root .contri-my-villas-hero-actions{
	flex-shrink:0;
	margin-left:0;
}
body.my-admin-root .contri-my-villas-create-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:8px;
}
body.my-admin-root .contri-my-villas-create-ico{
	display:inline-flex;
	line-height:0;
	flex-shrink:0;
}
body.my-admin-root .contri-my-villas-create-ico svg{
	display:block;
}
body.my-admin-root .contri-villa-status-badge{
	display:inline-block;
	padding:4px 10px;
	border-radius:999px;
	font-size:12px;
	font-weight:700;
	line-height:1.35;
	white-space:nowrap;
}
body.my-admin-root .contri-villa-status-badge--pending{
	background:#fef3c7;
	color:#92400e;
	border:1px solid #f59e0b;
}
body.my-admin-root .contri-villa-status-badge--live{
	background:#dcfce7;
	color:#166534;
	border:1px solid #22c55e;
}
body.my-admin-root .contri-villa-status-badge--hidden{
	background:#f1f5f9;
	color:#475569;
	border:1px solid #94a3b8;
}
body.my-admin-root .contri-my-villas-grid-wrap{
	padding:16px 18px 18px;
}
body.my-admin-root .contri-my-villas-notice{
	margin-bottom:14px;
}
body.my-admin-root .contri-my-villas-table-scroll{
	width:100%;
	overflow-x:auto;
	-webkit-overflow-scrolling:touch;
	border:1px solid #e2e8f0;
	border-radius:10px;
	background:#fff;
}
body.my-admin-root .contri-my-villas-table{
	width:100%;
	min-width:1180px;
	border-collapse:collapse;
	font-size:14px;
}
body.my-admin-root .contri-my-villas-table thead th{
	padding:11px 10px;
	text-align:left;
	background:#f1f5f9;
	color:#334155;
	font-weight:700;
	border-bottom:1px solid #e2e8f0;
	white-space:nowrap;
}
body.my-admin-root .contri-my-villas-table .contri-my-villas-th-center,
body.my-admin-root .contri-my-villas-table .contri-my-villas-td-center{
	text-align:center;
}
body.my-admin-root .contri-my-villas-table .contri-my-villas-th-actions{
	text-align:center;
	min-width:150px;
}
body.my-admin-root .contri-my-villas-table tbody td{
	padding:10px;
	border-bottom:1px solid #eef2f7;
	vertical-align:middle;
	color:#0f172a;
}
body.my-admin-root .contri-my-villas-table .contri-my-villas-td-empty{
	padding:18px;
	color:#64748b;
}
/* Mobile: card villa — header STT+tên, body 2 cột, footer nút (không label) */
@media (max-width:767px){
	body.my-admin-root .contri-my-villas-table-scroll{
		overflow:visible;
		border:none;
		background:transparent;
		padding:0;
	}
	body.my-admin-root .contri-my-villas-table{
		min-width:0;
		width:100%;
		display:block;
		border-collapse:separate;
		border-spacing:0;
	}
	body.my-admin-root .contri-my-villas-table thead{
		display:none;
	}
	body.my-admin-root .contri-my-villas-table tbody{
		display:block;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card{
		display:grid;
		/* Cột 1: STT hẹp; cột 2–3: tên (span) + body 2 ô đều */
		grid-template-columns:minmax(2rem,max-content) minmax(0,1fr) minmax(0,1fr);
		column-gap:0;
		row-gap:10px;
		align-items:stretch;
		margin-bottom:14px;
		border:1px solid #e2e8f0;
		border-radius:12px;
		background:#fff;
		box-shadow:0 4px 14px rgba(15,23,42,.06);
		overflow:hidden;
		padding:12px;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card:last-child{
		margin-bottom:0;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-singleton{
		display:block;
		border:1px solid #e2e8f0;
		border-radius:12px;
		background:#fff;
		box-shadow:0 2px 8px rgba(15,23,42,.05);
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-singleton td{
		display:block;
		width:100%;
		box-sizing:border-box;
		border:none;
		padding:18px 14px;
		text-align:center;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td{
		display:flex;
		flex-direction:column;
		align-items:flex-start;
		min-width:0;
		width:auto;
		max-width:100%;
		box-sizing:border-box;
		border:none;
		padding:0;
		margin:0;
		text-align:left;
		vertical-align:top;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-stt{
		grid-column:1;
		grid-row:1;
		align-self:stretch;
		justify-content:center;
		padding:10px 6px 10px 4px;
		font-size:15px;
		font-weight:800;
		color:#0f172a;
		letter-spacing:-.02em;
		border-right:1px solid #e2e8f0;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-title{
		grid-column:2 / -1;
		grid-row:1;
		align-self:stretch;
		padding:10px 10px 10px 8px;
		min-width:0;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-stt,
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-title{
		background:#f8fafc;
		border-bottom:1px solid #e2e8f0;
		margin-bottom:2px;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-body{
		padding:4px 6px 6px;
		min-width:0;
	}
	/* Body: chỉ dùng cột 2–3 (cột 1 dành cho STT ở header) */
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-body:nth-child(3){
		grid-column:2;
		grid-row:2;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-body:nth-child(4){
		grid-column:3;
		grid-row:2;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-body:nth-child(5){
		grid-column:2;
		grid-row:3;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-body:nth-child(6){
		grid-column:3;
		grid-row:3;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-body:nth-child(7){
		grid-column:2;
		grid-row:4;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-body:nth-child(8){
		grid-column:3;
		grid-row:4;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-body:nth-child(9){
		grid-column:2;
		grid-row:5;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-body:nth-child(10){
		grid-column:3;
		grid-row:5;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-body:not(.contri-my-villas-td-card-status)::before{
		content:attr(data-label);
		display:block;
		font-size:11px;
		font-weight:700;
		color:#64748b;
		margin-bottom:3px;
		line-height:1.25;
		text-transform:none;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-stt::before,
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-title::before,
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-foot::before{
		content:none;
		display:none;
	}
	/* Trạng thái: label + badge cùng một dòng */
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-status{
		flex-direction:row;
		flex-wrap:wrap;
		align-items:center;
		align-content:center;
		gap:6px 8px;
		grid-column:2 / -1;
		grid-row:6;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-status::before{
		content:attr(data-label) ":\00a0";
		display:inline;
		flex:0 0 auto;
		margin-bottom:0;
		line-height:1.35;
		white-space:nowrap;
		font-size:11px;
		font-weight:700;
		color:#64748b;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-status > .contri-villa-status-badge{
		flex:0 1 auto;
		min-width:0;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-name,
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-name .contri-my-villas-name-link{
		word-break:break-word;
		overflow-wrap:anywhere;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-foot{
		grid-column:1 / -1;
		grid-row:7;
		flex-direction:row;
		align-items:center;
		justify-content:center;
		padding-top:12px;
		margin-top:2px;
		border-top:1px solid #e2e8f0;
		background:#fafafa;
		margin-left:-12px;
		margin-right:-12px;
		margin-bottom:-12px;
		padding-left:12px;
		padding-right:12px;
		padding-bottom:12px;
		width:auto;
		max-width:none;
	}
	body.my-admin-root .contri-my-villas-table tbody tr.contri-my-villas-tr-card > td.contri-my-villas-td-card-foot .admin-req-action-cell{
		justify-content:center;
		width:100%;
		flex-wrap:wrap;
		gap:8px;
	}
}
body.my-admin-root .contri-my-villas-name-link{
	color:#1d4ed8!important;
	font-weight:600;
	text-decoration:none;
	border-bottom:1px solid transparent;
	transition:color .15s,border-color .15s;
}
body.my-admin-root .contri-my-villas-name-link:hover{
	color:#1e40af!important;
	border-bottom-color:#93c5fd;
	text-decoration:none;
}
body.my-admin-root .contri-my-villas-pager{
	display:flex;
	justify-content:flex-end;
	align-items:center;
	gap:12px;
	margin-top:16px;
	flex-wrap:wrap;
}
body.my-admin-root .contri-my-villas-page-meta{
	font-size:13px;
	color:#64748b;
}
@media (max-width:640px){
	body.my-admin-root .contri-my-villas-hero-inner{
		flex-wrap:nowrap;
		align-items:center;
		justify-content:space-between;
		gap:8px 10px;
		padding:14px 16px;
	}
	body.my-admin-root .contri-my-villas-hero-title{
		font-size:17px!important;
		font-weight:700!important;
		line-height:1.25!important;
		gap:6px;
		min-width:0;
	}
	body.my-admin-root .contri-my-villas-hero-emoji{
		font-size:20px;
	}
	body.my-admin-root .contri-my-villas-hero-title-text{
		white-space:nowrap;
		overflow:hidden;
		text-overflow:ellipsis;
	}
	body.my-admin-root .contri-my-villas-hero-actions{
		flex-shrink:0;
		margin-left:0;
	}
	body.my-admin-root .contri-my-villas-create-label{
		display:none;
	}
	body.my-admin-root .contri-my-villas-create-btn{
		min-width:40px;
		min-height:40px;
		padding:8px 10px;
	}
	body.my-admin-root .contri-my-villas-create-ico svg{
		width:18px;
		height:18px;
	}
}
