/* VIVI Brand Archive - Search Results Layout v0.9.81
   外框寬度對齊全站資訊板塊：var(--vivi-container) / 1320px。
*/
.vivi-lite-brand-archive-page{
	background:var(--vivi-color-bg);
	color:var(--vivi-color-text);
}
.vivi-brand-archive-main{
	width:min(100% - 20px,var(--vivi-container));
	margin:0 auto;
	padding:var(--vivi-page-main-padding-top) 0 var(--vivi-page-main-padding-bottom);
	font-family:var(--vivi-font-body);
}
.vivi-brand-archive-hero{
	display:grid;
	grid-template-columns:minmax(0,1fr) auto;
	gap:22px;
	align-items:end;
	padding:24px 0 18px;
	border-bottom:1px solid var(--vivi-color-border);
}
.vivi-brand-archive-copy .vivi-kicker{
	margin:0 0 10px;
	color:var(--vivi-color-red);
	font-size: var(--vivi-fs-xs);
	font-weight: var(--vivi-fw-bold);
	letter-spacing:.08em;
	text-transform:uppercase;
}
.vivi-brand-archive-copy .vivi-brand-archive-title,
.vivi-brand-archive-copy h1{
	margin:0 0 10px;
	font-family:var(--vivi-font-heading);
	font-size: var(--vivi-fs-h2);
	line-height:var(--vivi-lh-heading);
	letter-spacing:.04em;
	font-weight: var(--vivi-fw-bold);
	color:var(--vivi-color-text);
}
.vivi-brand-archive-copy p:not(.vivi-kicker){
	max-width:720px;
	margin:0;
	color:var(--vivi-color-text-muted);
	font-size: var(--vivi-fs-small);
	font-weight: var(--vivi-fw-regular);
	line-height:var(--vivi-lh-body);
}
.vivi-brand-archive-stats{
	justify-self:end;
	min-width:150px;
	padding:10px 0;
	text-align:right;
	color:var(--vivi-color-text-muted);
}
.vivi-brand-archive-stats strong{
	display:block;
	color:var(--vivi-color-text);
	font-size: var(--vivi-fs-h3);
	line-height:var(--vivi-lh-heading);
	font-weight: var(--vivi-fw-bold);
}
.vivi-brand-archive-stats span{
	display:block;
	margin-top:5px;
	font-size: var(--vivi-fs-xs);
	color:var(--vivi-color-text-muted);
	font-weight: var(--vivi-fw-bold);
}
.vivi-brand-filter-panel{
	margin:20px 0 10px;
	padding:var(--vivi-space-md);
	background:var(--vivi-color-card);
	border:1px solid var(--vivi-color-border);
	border-radius:var(--vivi-radius, 8px);
	box-shadow:var(--vivi-shadow-soft);
}
.vivi-brand-filter-form{
	display:grid;
	grid-template-columns:1fr;
	gap:0;
}
.vivi-brand-filter-form .vivi-ds-form-field{
	gap:0;
}
.vivi-brand-filter-top{
	display:flex;
	flex-wrap:wrap;
	gap:12px;
	align-items:end;
	margin-bottom:12px;
}
.vivi-brand-filter-form .vivi-input,
.vivi-brand-filter-form .vivi-select{
	width:100%;
	height:44px;
	min-height:44px;
	max-height:44px;
	border-radius:var(--vivi-radius, 8px);
}
.vivi-brand-filter-keyword{
	flex:1 1 320px;
	min-width:220px;
}
.vivi-brand-category-row{
	position:relative;
	min-width:0;
	padding:12px 0;
}
.vivi-brand-category-tags{
	display:flex;
	flex-wrap:nowrap;
	gap:10px;
	align-items:center;
	width:100%;
	min-width:0;
	overflow:hidden;
}
.vivi-brand-category-tag{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	flex:0 0 auto;
	max-width:190px;
	min-height:34px;
	padding:0 14px;
	border-radius:var(--vivi-radius, 8px);
	border:1px solid var(--vivi-color-border);
	background:var(--vivi-color-card);
	color:var(--vivi-color-text-muted);
	font-size: var(--vivi-fs-small);
	font-weight: var(--vivi-fw-bold);
	line-height:1;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
	text-decoration:none;
	transition:background .18s ease,border-color .18s ease,color .18s ease;
}
.vivi-brand-category-tag:hover{
	border-color:var(--vivi-color-border-strong);
	background:var(--vivi-color-bg-soft);
	color:var(--vivi-color-text);
}
.vivi-brand-category-tag.is-active{
	border-color:var(--vivi-color-black);
	background:var(--vivi-color-black);
	color:var(--vivi-color-text-inverse);
}
.vivi-brand-category-tag.is-overflow-hidden{
	display:none;
}
.vivi-brand-category-more{
	min-width:42px;
	max-width:42px;
	cursor:pointer;
}
.vivi-brand-category-more[hidden],
.vivi-brand-category-popover[hidden]{
	display:none !important;
}
.vivi-brand-category-popover{
	position:absolute;
	top:calc(100% + 10px);
	left:0;
	z-index:30;
	width:min(420px,100%);
	padding:14px;
	border:1px solid var(--vivi-color-border);
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-card);
	box-shadow:var(--vivi-shadow-soft);
}
.vivi-brand-category-popover-head{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	margin-bottom:12px;
	color:var(--vivi-color-text);
	font-size: var(--vivi-fs-small);
}
.vivi-brand-category-popover-head button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:30px;
	height:30px;
	padding:0;
	border:1px solid var(--vivi-color-border);
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-card);
	color:var(--vivi-color-text-muted);
	cursor:pointer;
	font-size: var(--vivi-fs-body-lg);
	line-height:1;
}
.vivi-brand-category-popover-head button[data-vivi-brand-category-close]::before{
	content:"×";
	display:block;
	font-size:18px;
	font-weight:400;
	line-height:1;
	transform:translateY(-1px);
}
.vivi-brand-category-popover-list{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
}
.vivi-brand-category-popover-list .vivi-brand-category-tag{
	max-width:100%;
}



@media (max-width:1024px){
	.vivi-brand-archive-main{width:min(100% - 20px,var(--vivi-container));padding-top:var(--vivi-page-main-padding-top)}
	.vivi-brand-archive-hero{grid-template-columns:1fr}
	.vivi-brand-archive-stats{justify-self:start;text-align:left;min-width:0}
}
@media (max-width:640px){
	.vivi-brand-archive-main{width:min(100% - 20px,var(--vivi-container));padding:var(--vivi-mobile-page-main-padding-top) 0 var(--vivi-mobile-page-main-padding-bottom)}
	.vivi-brand-archive-hero{padding:20px 0 16px}
	.vivi-brand-archive-copy .vivi-brand-archive-title,
	.vivi-brand-archive-copy h1{font-size: var(--vivi-fs-h2)}
	.vivi-brand-archive-copy p:not(.vivi-kicker){font-size: var(--vivi-fs-xs)}
	.vivi-brand-filter-panel{margin:16px 0 4px;padding:var(--vivi-space-sm)}
	.vivi-brand-filter-form{gap:0}
	.vivi-brand-filter-top{flex-direction:column;align-items:stretch}
	.vivi-brand-filter-keyword{flex:1 1 auto;width:100%;min-width:0}
	.vivi-brand-category-tags{gap:8px}
	.vivi-brand-category-tag{min-height:32px;padding:0 12px;font-size: var(--vivi-fs-xs);max-width:150px}
	.vivi-brand-category-more{min-width:38px;max-width:38px;padding:0}
	.vivi-brand-category-popover{width:100%;padding:12px}
	
	
	
}


/* 0.9.81：避免 AJAX 清空關鍵字後，標籤列以內容寬度撐開 Filter 外框。 */
.vivi-brand-filter-form,
.vivi-brand-filter-form > *,
.vivi-brand-filter-top,
.vivi-brand-category-row,
.vivi-brand-category-tags{
	min-width:0;
	max-width:100%;
	box-sizing:border-box;
}
.vivi-brand-filter-top{
	width:100%;
}
.vivi-brand-filter-keyword{
	min-width:0;
}
/* VIVI Brand Map v0.9.790：生活探索第一版。 */
.vivi-brand-map-layout{
	display:grid;
	grid-template-columns:minmax(0,.95fr) minmax(420px,1.25fr);
	gap:22px;
	align-items:center;
	margin-top:22px;
}
.vivi-brand-map-panel{
	position:sticky;
	top:calc(var(--vivi-header-height,76px) + 18px);
	z-index:5;
	min-width:0;
}
.vivi-brand-map-card{
	overflow:hidden;
	border:1px solid var(--vivi-color-border);
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-card);
	box-shadow:var(--vivi-shadow-soft);
}


.vivi-brand-map-status{
	margin:14px 18px 0;
	padding:12px 14px;
	border:1px solid var(--vivi-color-border);
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-bg-soft);
	color:var(--vivi-color-text-muted);
	font-size:var(--vivi-fs-small);
	line-height:1.6;
}
.vivi-brand-map-canvas{
	width:100%;
	height:620px;
	min-height:460px;
	background:var(--vivi-color-bg-soft);
}
@media (max-width:1080px){
	.vivi-brand-map-layout{
		grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);
		gap:18px;
	}
	.vivi-brand-map-canvas{
		height:560px;
	}
}
@media (max-width:860px){
	.vivi-brand-map-layout{
		display:flex;
		flex-direction:column;
		gap:16px;
		margin-top:16px;
	}
	.vivi-brand-map-panel{
		order:-1;
		position:relative;
		top:auto;
		z-index:1;
	}
	
	
	.vivi-brand-map-status{
		margin:12px 14px 0;
	}
	.vivi-brand-map-canvas{
		height:56vh;
		min-height:360px;
	}
}
@media (max-width:520px){
	
	.vivi-brand-map-canvas{
		min-height:330px;
	}
}


/* VIVI Brand Map v0.9.796：生活探索頁移除舊列表殘留，保留單欄全寬地圖。 */
.vivi-brand-map-layout-map-only{
	display:block;
	margin-top:22px;
}
.vivi-brand-map-layout-map-only .vivi-brand-map-panel{
	position:relative;
	top:auto;
	z-index:1;
	width:100%;
}
.vivi-brand-map-layout-map-only .vivi-brand-map-canvas{
	height:680px;
	min-height:520px;
}
@media (max-width:860px){
	.vivi-brand-map-layout-map-only{
		margin-top:16px;
	}
	.vivi-brand-map-layout-map-only .vivi-brand-map-canvas{
		height:56vh;
		min-height:360px;
	}
}
@media (max-width:520px){
	.vivi-brand-map-layout-map-only .vivi-brand-map-canvas{
		min-height:330px;
	}
}


.vivi-brand-archive-main-no-hero{
	padding-top:32px;
}
.vivi-brand-archive-main-no-hero .vivi-brand-filter-panel{
	margin-top:0;
}
@media (max-width:640px){
	.vivi-brand-archive-main-no-hero{
		padding-top:18px;
	}
}

.vivi-brand-archive-main-no-hero{
	padding-top:32px;
}
.vivi-brand-archive-main-no-hero .vivi-brand-map-layout-map-only{
	margin-top:0;
}
.vivi-brand-map-canvas-wrap{
	position:relative;
	width:100%;
	min-width:0;
}
.vivi-brand-map-canvas-wrap .vivi-brand-map-canvas{
	display:block;
}










@media (max-width:640px){
	.vivi-brand-archive-main-no-hero{
		padding-top:18px;
	}
	
	
	
	
	
}


/* VIVI Brand Map v0.9.802：修正固定一屏時主區塊重複計算 Header 高度，避免上方空間過大與地圖底部被切。 */
body.vivi-lite-brand-map-page{
	height:var(--vivi-brand-map-vh,100dvh);
	min-height:var(--vivi-brand-map-vh,100dvh);
	overflow:hidden!important;
	padding-bottom:0!important;
}
body.vivi-lite-brand-map-page .vivi-top-button{
	display:none!important;
}
body.vivi-lite-brand-map-page .vivi-brand-archive-main-no-hero{
	width:min(100% - 20px,var(--vivi-container));
	height:calc(var(--vivi-brand-map-vh,100dvh) - var(--vivi-header-height,76px) - 20px);
	min-height:0;
	margin:10px auto!important;
	padding:0!important;
	overflow:hidden!important;
	box-sizing:border-box;
}
body.admin-bar.vivi-lite-brand-map-page .vivi-brand-archive-main-no-hero{
	height:calc(var(--vivi-brand-map-vh,100dvh) - var(--vivi-header-height,76px) - 32px - 20px);
	margin:10px auto!important;
}
body.vivi-lite-brand-map-page .vivi-brand-map-layout-map-only{
	display:block;
	height:100%;
	min-height:0;
	margin:0!important;
}
body.vivi-lite-brand-map-page .vivi-brand-map-layout-map-only .vivi-brand-map-panel{
	position:relative;
	top:auto;
	z-index:1;
	height:100%;
	min-height:0;
	width:100%;
}
body.vivi-lite-brand-map-page .vivi-brand-map-card{
	display:flex;
	flex-direction:column;
	height:100%;
	min-height:0;
	width:100%;
}

body.vivi-lite-brand-map-page .vivi-brand-map-status{
	flex:0 0 auto;
}
body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap{
	position:relative;
	flex:1 1 auto;
	min-height:320px;
	width:100%;
}
body.vivi-lite-brand-map-page .vivi-brand-map-layout-map-only .vivi-brand-map-canvas,
body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap .vivi-brand-map-canvas{
	display:block;
	height:100%!important;
	min-height:320px!important;
	width:100%;
}
@media (max-width:860px){
	body.vivi-lite-brand-map-page .vivi-brand-archive-main-no-hero{
		width:min(100% - 20px,var(--vivi-container));
		height:calc(var(--vivi-brand-map-vh,100dvh) - var(--vivi-header-height-mobile,66px) - 20px - var(--vivi-mobile-bottom-nav-height,0px));
		margin:10px auto!important;
	}
	body.admin-bar.vivi-lite-brand-map-page .vivi-brand-archive-main-no-hero{
		height:calc(var(--vivi-brand-map-vh,100dvh) - var(--vivi-header-height-mobile,66px) - 46px - 20px - var(--vivi-mobile-bottom-nav-height,0px));
		margin:10px auto!important;
	}
	
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap,
	body.vivi-lite-brand-map-page .vivi-brand-map-layout-map-only .vivi-brand-map-canvas,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap .vivi-brand-map-canvas{
		min-height:260px!important;
	}
}
@media (max-width:520px){
	body.vivi-lite-brand-map-page .vivi-brand-archive-main-no-hero{
		width:100%;
		height:calc(var(--vivi-brand-map-vh,100dvh) - var(--vivi-header-height-mobile,66px) - var(--vivi-mobile-bottom-nav-height,0px));
		margin:0!important;
	}
	body.admin-bar.vivi-lite-brand-map-page .vivi-brand-archive-main-no-hero{
		height:calc(var(--vivi-brand-map-vh,100dvh) - var(--vivi-header-height-mobile,66px) - 46px - var(--vivi-mobile-bottom-nav-height,0px));
		margin:0!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-card{
		border-left:0;
		border-right:0;
		border-radius:0;
	}
}


/* VIVI Brand Map v0.9.803：標題列整合品牌搜尋，移除地圖標示數量。 */
.vivi-brand-map-form{
	display:flex;
	flex-direction:column;
	height:100%;
	min-height:0;
	margin:0;
}


























/* VIVI Brand Map v0.9.806：移除 Google 地圖原生全螢幕與攝影機/縮放控制項，只保留自訂搜尋按鈕與品牌篩選。 */
.vivi-brand-map-canvas .gm-fullscreen-control,
.vivi-brand-map-canvas .gm-bundled-control,
.vivi-brand-map-canvas .gm-control-active[aria-label*="放大"],
.vivi-brand-map-canvas .gm-control-active[aria-label*="縮小"],
.vivi-brand-map-canvas .gm-control-active[aria-label*="Zoom"],
.vivi-brand-map-canvas .gm-control-active[aria-label*="Tilt"],
.vivi-brand-map-canvas .gm-control-active[aria-label*="Rotate"],
.vivi-brand-map-canvas button[aria-label*="全螢幕"],
.vivi-brand-map-canvas button[aria-label*="Full screen"],
.vivi-brand-map-canvas button[aria-label*="camera"],
.vivi-brand-map-canvas button[aria-label*="Camera"]{
	display:none!important;
}


/* VIVI Brand Map v0.9.807：強制清除 Google Maps 原生全螢幕、攝影機、縮放、旋轉控制項。只保留 Google 標誌、版權資訊、自訂搜尋按鈕與 VIVI 篩選。 */
.vivi-brand-map-canvas .gm-fullscreen-control,
.vivi-brand-map-canvas .gm-bundled-control,
.vivi-brand-map-canvas .gm-bundled-control-on-bottom,
.vivi-brand-map-canvas .gmnoprint .gm-control-active,
.vivi-brand-map-canvas .gmnoprint button[aria-label],
.vivi-brand-map-canvas .gm-control-active[aria-label],
.vivi-brand-map-canvas button[aria-label*="全螢幕"],
.vivi-brand-map-canvas button[aria-label*="Full screen"],
.vivi-brand-map-canvas button[aria-label*="Camera"],
.vivi-brand-map-canvas button[aria-label*="camera"],
.vivi-brand-map-canvas button[aria-label*="Tilt"],
.vivi-brand-map-canvas button[aria-label*="Rotate"],
.vivi-brand-map-canvas button[aria-label*="Zoom"],
.vivi-brand-map-canvas button[aria-label*="放大"],
.vivi-brand-map-canvas button[aria-label*="縮小"]{
	display:none!important;
	visibility:hidden!important;
	pointer-events:none!important;
}

/* VIVI Brand Map v0.9.835：左側列表加入合作類型 Page Tabs，並移除地圖合作篩選浮層。 */
body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap{
	--vivi-brand-map-side-panel-width:35%;
	--vivi-brand-map-side-panel-toggle-width:30px;
	--vivi-brand-map-side-panel-toggle-gap:12px;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel{
	position:absolute;
	top:0;
	left:0;
	bottom:0;
	z-index:40;
	width:var(--vivi-brand-map-side-panel-width,35%);
	height:100%;
	background:rgba(255,255,255,.94);
	border-right:1px solid rgba(17,24,39,.08);
	box-shadow:8px 0 22px rgba(17,24,39,.10);
	-webkit-backdrop-filter:blur(12px);
	backdrop-filter:blur(12px);
	transform:translateX(0);
	transition:transform .24s ease, box-shadow .24s ease;
	pointer-events:auto;
	overflow:hidden;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-inner{
	height:100%;
	min-height:0;
	overflow:auto;
	-webkit-overflow-scrolling:touch;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-inner.is-loading{
	opacity:1;
	pointer-events:auto;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-results.is-loading .vivi-brand-map-side-panel-list{
	opacity:.58;
	pointer-events:none;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel.is-collapsed{
	box-shadow:none;
	transform:translateX(-100%);
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-toggle{
	position:absolute;
	top:50%;
	left:var(--vivi-brand-map-side-panel-width,35%);
	z-index:41;
	width:30px;
	height:54px;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:0;
	border:1px solid rgba(17,24,39,.08);
	border-left:0;
	border-radius:var(--vivi-radius, 8px);
	background:rgba(255,255,255,.96);
	box-shadow:3px 0 12px rgba(17,24,39,.12);
	color:var(--vivi-color-text,#222);
	font-size:0;
	line-height:0;
	cursor:pointer;
	transform:translateY(-50%);
	transition:left .24s ease, background-color .2s ease, box-shadow .2s ease;
	pointer-events:auto;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-toggle::before{
	content:"";
	display:block;
	width:9px;
	height:9px;
	box-sizing:border-box;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-toggle[aria-expanded="true"]::before{
	border-left:2px solid currentColor;
	border-bottom:2px solid currentColor;
	transform:rotate(45deg);
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-toggle[aria-expanded="false"]::before{
	border-right:2px solid currentColor;
	border-bottom:2px solid currentColor;
	transform:rotate(-45deg);
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-toggle:hover,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-toggle:focus-visible{
	background:var(--vivi-color-bg-soft,#f7f3ee);
	box-shadow:4px 0 16px rgba(17,24,39,.16);
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-toggle:focus-visible{
	outline:2px solid var(--vivi-color-orange,#b98454);
	outline-offset:2px;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-side-panel-toggle{
	left:0;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-side-panel-toggle{
	background:var(--vivi-color-orange,var(--vivi-color-primary,#b98454));
	border-color:var(--vivi-color-orange,var(--vivi-color-primary,#b98454));
	color:#fff;
	box-shadow:4px 0 16px rgba(17,24,39,.18);
}
body.vivi-lite-brand-archive-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-side-panel-toggle:hover,
body.vivi-lite-brand-archive-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-side-panel-toggle:focus-visible{
	background:var(--vivi-color-orange,var(--vivi-color-primary,#b98454));
	border-color:var(--vivi-color-orange,var(--vivi-color-primary,#b98454));
	color:#fff;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-content{
	display:flex;
	position:relative;
	flex-direction:column;
	gap:var(--vivi-space-md,16px);
	min-height:100%;
	padding:var(--vivi-space-lg,24px) var(--vivi-space-md,16px);
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-head{
	display:grid;
	gap:7px;
	padding:2px 2px 0;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-title{
	margin:0;
	color:var(--vivi-color-heading,#111827);
	font-family:var(--vivi-font-heading,inherit);
	font-size:var(--vivi-fs-h3,24px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:var(--vivi-lh-compact,1.25);
}
body.vivi-lite-brand-archive-page .vivi-brand-map-home-intro,
body.vivi-lite-brand-map-page .vivi-brand-map-home-intro{
	max-width:34em;
	margin:0;
	color:var(--vivi-color-text-muted,#6b7280);
	font-size:12px;
	font-weight:400;
	line-height:1.68;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-home-intro a,
body.vivi-lite-brand-map-page .vivi-brand-map-home-intro a{
	color:var(--vivi-color-heading,#111827);
	font-weight:600;
	text-decoration:none;
	text-underline-offset:3px;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-home-intro a:hover,
body.vivi-lite-brand-archive-page .vivi-brand-map-home-intro a:focus-visible,
body.vivi-lite-brand-map-page .vivi-brand-map-home-intro a:hover,
body.vivi-lite-brand-map-page .vivi-brand-map-home-intro a:focus-visible{
	color:var(--vivi-color-orange,#b98454);
	text-decoration:underline;
}




body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-overlay,
body.vivi-lite-brand-map-page .vivi-brand-map-keyword-overlay{
	position:absolute;
	top:16px;
	left:calc(var(--vivi-brand-map-side-panel-width,35%) + 18px);
	right:18px;
	z-index:35;
	pointer-events:none;
	transition:left .24s ease;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-keyword-overlay,
body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-keyword-overlay{
	left:18px;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-search-stack,
body.vivi-lite-brand-map-page .vivi-brand-map-search-stack{
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	gap:10px;
	width:100%;
	min-width:0;
	pointer-events:none;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-overlay-row,
body.vivi-lite-brand-map-page .vivi-brand-map-keyword-overlay-row{
	order:0!important;
	flex:0 0 auto!important;
	width:500px;
	max-width:500px;
	min-width:0;
	margin:0;
	pointer-events:auto;
	box-sizing:border-box;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-keyword-overlay-row,
body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-keyword-overlay-row{
	align-self:center;
}




body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-control,
body.vivi-lite-brand-map-page .vivi-brand-map-keyword-control{
	position:relative;
	display:block;
	width:100%;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-overlay-row .vivi-input,
body.vivi-lite-brand-map-page .vivi-brand-map-keyword-overlay-row .vivi-input{
	width:100%;
	height:44px;
	min-height:44px;
	max-height:44px;
	padding:0 50px 0 18px;
	border:1px solid rgba(17,24,39,.10);
	border-radius:var(--vivi-radius, 8px);
	background:rgba(255,255,255,.96);
	box-shadow:0 10px 28px rgba(17,24,39,.16);
	-webkit-backdrop-filter:blur(12px);
	backdrop-filter:blur(12px);
}
body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-overlay-row .vivi-input:focus,
body.vivi-lite-brand-map-page .vivi-brand-map-keyword-overlay-row .vivi-input:focus{
	border-color:rgba(185,132,84,.60);
	box-shadow:0 12px 30px rgba(17,24,39,.18),0 0 0 3px rgba(185,132,84,.12);
}
/* 清除 X 由全站共用搜尋控制輸出；此處只移除其他 WebKit 搜尋裝飾。 */
body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-overlay-row .vivi-input::-webkit-search-decoration,
body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-overlay-row .vivi-input::-webkit-search-results-button,
body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-overlay-row .vivi-input::-webkit-search-results-decoration,
body.vivi-lite-brand-map-page .vivi-brand-map-keyword-overlay-row .vivi-input::-webkit-search-decoration,
body.vivi-lite-brand-map-page .vivi-brand-map-keyword-overlay-row .vivi-input::-webkit-search-results-button,
body.vivi-lite-brand-map-page .vivi-brand-map-keyword-overlay-row .vivi-input::-webkit-search-results-decoration{
	-webkit-appearance:none;
	appearance:none;
	display:none;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-submit,
body.vivi-lite-brand-map-page .vivi-brand-map-keyword-submit{
	appearance:none;
	-webkit-appearance:none;
	position:absolute;
	top:50%;
	right:0;
	transform:translateY(-50%);
	display:flex;
	align-items:center;
	justify-content:center;
	width:44px;
	height:44px;
	min-width:44px;
	min-height:44px;
	max-width:44px;
	max-height:44px;
	padding:0;
	border:0;
	border-radius:var(--vivi-radius, 8px);
	background:transparent;
	color:#111827;
	cursor:pointer;
	box-shadow:none;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-submit:hover,
body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-submit:focus-visible,
body.vivi-lite-brand-map-page .vivi-brand-map-keyword-submit:hover,
body.vivi-lite-brand-map-page .vivi-brand-map-keyword-submit:focus-visible{
	background:rgba(17,24,39,.08);
	color:#111827;
	box-shadow:none;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-submit .vivi-bb-icon,
body.vivi-lite-brand-map-page .vivi-brand-map-keyword-submit .vivi-bb-icon{
	font-size:18px;
	line-height:1;
}
@media (max-width:1180px){
	body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-overlay,
	body.vivi-lite-brand-map-page .vivi-brand-map-keyword-overlay{
		top:14px;
		left:calc(var(--vivi-brand-map-side-panel-width,35%) + 14px);
		right:14px;
	}
	body.vivi-lite-brand-archive-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-keyword-overlay,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-keyword-overlay{
		left:14px;
	}
	body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-overlay-row .vivi-input,
	body.vivi-lite-brand-map-page .vivi-brand-map-keyword-overlay-row .vivi-input{
		height:44px;
		min-height:44px;
		max-height:44px;
		padding-left:15px;
		padding-right:44px;
		font-size:13px;
	}
	body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-submit,
	body.vivi-lite-brand-map-page .vivi-brand-map-keyword-submit{
		width:44px;
		height:44px;
		min-width:44px;
		min-height:44px;
		max-width:44px;
		max-height:44px;
		right:0;
	}
}
@media (max-width:860px){
	body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-overlay,
	body.vivi-lite-brand-map-page .vivi-brand-map-keyword-overlay,
	body.vivi-lite-brand-archive-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-keyword-overlay,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-keyword-overlay{
		top:12px;
		left:12px;
		right:12px;
		z-index:38;
	}
	body.vivi-lite-brand-archive-page .vivi-brand-map-search-stack,
	body.vivi-lite-brand-map-page .vivi-brand-map-search-stack{
		align-items:stretch;
		gap:8px;
	}
	body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-overlay-row,
	body.vivi-lite-brand-map-page .vivi-brand-map-keyword-overlay-row,
	body.vivi-lite-brand-archive-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-keyword-overlay-row,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-keyword-overlay-row{
		order:0!important;
		align-self:center;
		flex:0 0 auto!important;
		width:min(100%,420px);
		max-width:100%;
	}
	
	
	
	body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-overlay-row .vivi-input,
	body.vivi-lite-brand-map-page .vivi-brand-map-keyword-overlay-row .vivi-input{
		height:44px!important;
		min-height:44px!important;
		max-height:44px!important;
		padding-left:15px!important;
		padding-right:46px!important;
		font-size:16px!important;
	}
	body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-submit,
	body.vivi-lite-brand-map-page .vivi-brand-map-keyword-submit{
		width:44px!important;
		height:44px!important;
		min-width:44px!important;
		min-height:44px!important;
		max-width:44px!important;
		max-height:44px!important;
	}
}






body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-list.vivi-brand-map-loop-list{
	display:grid;
	grid-template-columns:1fr!important;
	gap:var(--vivi-space-sm,12px);
	align-items:stretch;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-item{
	display:grid;
	grid-template-columns:var(--vivi-profile-person-card-columns,72px minmax(0,1fr));
	gap:var(--vivi-profile-person-card-gap,var(--vivi-space-md,16px));
	min-height:128px;
	padding:var(--vivi-profile-person-card-padding,var(--vivi-space-md,16px));
	border:1px solid var(--vivi-profile-person-card-border,var(--vivi-color-border,rgba(17,24,39,.10)));
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-profile-person-card-bg,var(--vivi-color-card,#fff));
	box-shadow:var(--vivi-profile-person-card-shadow,var(--vivi-shadow-card,0 14px 36px rgba(17,24,39,.08)));
	transition:transform var(--vivi-transition-fast,.18s ease), box-shadow var(--vivi-transition-fast,.18s ease), border-color var(--vivi-transition-fast,.18s ease);
	cursor:pointer;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-item:hover{
	transform:translateY(-2px);
	border-color:color-mix(in srgb,var(--vivi-color-primary,#111827) 35%,var(--vivi-color-border,rgba(17,24,39,.10)));
	box-shadow:var(--vivi-shadow-hero,var(--vivi-shadow-card,0 18px 48px rgba(17,24,39,.12)));
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-avatar{
	display:flex;
	align-items:center;
	justify-content:center;
	width:var(--vivi-profile-person-avatar-size,72px);
	min-width:var(--vivi-profile-person-avatar-size,72px);
	height:var(--vivi-profile-person-avatar-size,72px);
	min-height:var(--vivi-profile-person-avatar-size,72px);
	overflow:hidden;
	border:1px solid var(--vivi-color-border,rgba(17,24,39,.10));
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-bg-warm,#f7f3ee);
	color:var(--vivi-color-primary,#111827);
	font-size:var(--vivi-fs-h3,24px);
	font-weight:var(--vivi-fw-bold,600);
	text-decoration:none;
	box-shadow:var(--vivi-shadow-sm,0 10px 24px rgba(0,0,0,.10));
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-avatar img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-body{
	display:flex;
	flex-direction:column;
	min-width:0;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-title-row{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:var(--vivi-space-xs,8px);
	min-width:0;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-name{
	min-width:0;
	margin:0;
	font-family:var(--vivi-font-heading,inherit);
	font-size:var(--vivi-fs-body,15px);
	line-height:var(--vivi-lh-compact,1.35);
	font-weight:var(--vivi-fw-bold,600);
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-name a,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-name-button{
	appearance:none;
	-webkit-appearance:none;
	display:block;
	width:100%;
	min-width:0;
	padding:0;
	border:0;
	background:transparent;
	overflow:hidden;
	color:var(--vivi-color-heading,#111827);
	font:inherit;
	line-height:inherit;
	text-align:left;
	text-decoration:none;
	text-overflow:ellipsis;
	white-space:nowrap;
	cursor:pointer;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-name a:hover,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-name a:focus-visible,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-name-button:hover,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-name-button:focus-visible,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-name-button[aria-current="true"]{
	color:var(--vivi-color-primary,#111827);
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-name-button:focus-visible{
	outline:2px solid color-mix(in srgb,var(--vivi-color-primary,#111827) 22%,transparent);
	outline-offset:3px;
	border-radius:var(--vivi-radius, 8px);
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-item.is-brand-map-marker-active{
	border-color:color-mix(in srgb,var(--vivi-color-primary,#111827) 42%,var(--vivi-color-border,rgba(17,24,39,.10)));
	box-shadow:var(--vivi-shadow-hero,var(--vivi-shadow-card,0 18px 48px rgba(17,24,39,.12)));
}




body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-actions{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:flex-end!important;
	gap:var(--vivi-profile-person-action-gap,10px)!important;
	align-self:flex-end!important;
	margin-top:auto!important;
	margin-left:auto!important;
}

body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-loop-action-icon{
	appearance:none!important;
	-webkit-appearance:none!important;
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	width:auto!important;
	min-width:0!important;
	height:auto!important;
	min-height:0!important;
	margin:0!important;
	padding:0!important;
	border:0!important;
	border-radius:var(--vivi-radius, 8px) !important;
	background:transparent!important;
	box-shadow:none!important;
	color:var(--vivi-loop-action-icon-color,var(--vivi-color-text-muted,#6b7280))!important;
	font:inherit!important;
	line-height:1!important;
	text-decoration:none!important;
	cursor:pointer!important;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-loop-action-icon:hover,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-loop-action-icon:focus-visible{
	color:var(--vivi-loop-action-icon-active-color,var(--vivi-color-primary,#111827))!important;
	transform:none!important;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-loop-action-icon .vivi-bb-icon,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-loop-action-icon .vivi-bb-icon::before{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	width:var(--vivi-loop-action-icon-size,26px)!important;
	min-width:var(--vivi-loop-action-icon-size,26px)!important;
	height:var(--vivi-loop-action-icon-size,26px)!important;
	min-height:var(--vivi-loop-action-icon-size,26px)!important;
	margin:0!important;
	padding:0!important;
	font-size:var(--vivi-loop-action-icon-size,26px)!important;
	line-height:1!important;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-profile-follow-toggle.is-loading{
	opacity:.48!important;
	pointer-events:none!important;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-profile-follow-toggle.is-not-following .vivi-bb-icon::before{
	content:""!important;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-profile-follow-toggle.is-following .vivi-bb-icon::before{
	content:""!important;
}

body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-detail-toggle .vivi-bb-icon::before{
	content:""!important;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-panel{
	position:absolute;
	inset:0;
	z-index:8;
	display:none;
	min-height:100%;
	padding:var(--vivi-space-lg,24px) var(--vivi-space-md,16px);
	overflow:auto;
	-webkit-overflow-scrolling:touch;
	background:rgba(255,255,255,.98);
	box-shadow:inset 0 0 0 1px rgba(17,24,39,.04);
}
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-panel.is-open{
	display:block;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-close{
	appearance:none;
	-webkit-appearance:none;
	position:absolute;
	top:14px;
	right:14px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:36px;
	height:36px;
	padding:0;
	border:1px solid var(--vivi-color-border,rgba(17,24,39,.10));
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-card,#fff);
	box-shadow:0 8px 22px rgba(17,24,39,.10);
	color:var(--vivi-color-text,#374151);
	font-size:24px;
	font-weight:var(--vivi-fw-regular,400);
	line-height:1;
	cursor:pointer;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-close:hover,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-close:focus-visible{
	background:var(--vivi-color-bg-soft,#f7f3ee);
	color:var(--vivi-color-heading,#111827);
	outline:0;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-close:focus-visible{
	box-shadow:0 0 0 2px color-mix(in srgb,var(--vivi-color-primary,#111827) 22%,transparent),0 8px 22px rgba(17,24,39,.10);
}
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-body{
	min-height:calc(100vh - 220px);
	padding-top:48px;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-profile-follow-label,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-shared-profile-admin-switch .vivi-profile-admin-switch-label,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-shared-profile-loop-share .vivi-group-member-share-label{
	position:absolute!important;
	width:1px!important;
	height:1px!important;
	padding:0!important;
	margin:-1px!important;
	overflow:hidden!important;
	clip:rect(0,0,0,0)!important;
	white-space:nowrap!important;
	border:0!important;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-profile-label{
	position:absolute!important;
	width:1px!important;
	height:1px!important;
	padding:0!important;
	margin:-1px!important;
	overflow:hidden!important;
	clip:rect(0,0,0,0)!important;
	white-space:nowrap!important;
	border:0!important;
}
/* 0.9.965：生活探索 Loop List 底部自動載入狀態沿用網站基礎設定 AJAX Loading。 */
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-load-status{
	text-align:center;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-load-status[hidden]{
	display:none!important;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-load-status.vivi-brand-load-more,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-load-status.vivi-brand-load-complete{
	width:100%!important;
	max-width:var(--vivi-ajax-loader-max-width,850px)!important;
	margin:var(--vivi-ajax-loader-margin-top,24px) auto 0!important;
	padding:var(--vivi-ajax-loader-padding-y,14px) 0!important;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-load-status.is-error{
	color:var(--vivi-color-red,#b42318)!important;
}

body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-empty{
	padding:var(--vivi-space-lg,24px);
	border:1px solid var(--vivi-color-border,rgba(17,24,39,.10));
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-card,#fff);
	color:var(--vivi-color-text-muted,#6b7280);
	text-align:center;
	font-size:var(--vivi-fs-body,15px);
	font-weight:var(--vivi-fw-bold,600);
}
@media (max-width:1180px){
	body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-item{
		grid-template-columns:48px minmax(0,1fr);
		gap:10px;
		padding:10px;
	}
	body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-avatar{
		width:48px;
		min-width:48px;
		height:48px;
		min-height:48px;
	}
}
@media (max-width:860px){
	body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel{
		width:var(--vivi-brand-map-side-panel-width,35%);
	}
	body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-toggle{
		left:var(--vivi-brand-map-side-panel-width,35%);
	}
	body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-content{
		padding:var(--vivi-space-md,16px) 10px;
	}
	
	
	
	body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-item{
		grid-template-columns:1fr;
		justify-items:center;
	}
	body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-name{
		width:100%;
		font-size:var(--vivi-fs-small,13px);
		text-align:center;
	}
}


body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel{
	width:var(--vivi-brand-map-side-panel-width,35%)!important;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-toggle{
	left:var(--vivi-brand-map-side-panel-width,35%)!important;
	z-index:41!important;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-side-panel-toggle{
	left:0!important;
}







@media (max-width:860px){
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap{
		--vivi-brand-map-side-panel-width:88%;
	}
	
	
}

/* VIVI Brand Map v0.9.843：分類點擊立即回饋，避免 AJAX 前看起來無反應。 */


/* VIVI Brand Map v0.9.916：生活探索內層只保留外框狀態與載入/錯誤樣式，內容改由獨立 Mini Profile 控制。 */
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-body,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-body{
	padding-top:40px;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content{
	display:flex;
	flex-direction:column;
	gap:var(--vivi-space-md,16px);
	width:100%;
	min-width:0;
	box-sizing:border-box;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-placeholder,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-loading,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-error,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-placeholder,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-loading,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-error{
	width:100%;
	margin:0;
	padding:var(--vivi-space-md,16px);
	border:1px solid var(--vivi-color-border,rgba(17,24,39,.10));
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-card,#fff);
	box-shadow:var(--vivi-shadow-soft,0 10px 28px rgba(0,0,0,.05));
	color:var(--vivi-color-text-muted,#6b7280);
	font-family:var(--vivi-font-body,inherit);
	font-size:var(--vivi-fs-small,14px);
	font-weight:var(--vivi-fw-regular,400);
	line-height:var(--vivi-lh-body,1.7);
	box-sizing:border-box;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-error,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-error{
	color:var(--vivi-color-danger,#9f1239);
	background:#fff1f2;
	border-color:rgba(225,29,72,.18);
}

/* VIVI Brand Map v0.9.884：內層品牌資訊開啟時，一次只保留內層卷軸，鎖住外層列表捲動。 */
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel.is-profile-detail-open .vivi-brand-map-side-panel-inner{
	overflow:hidden!important;
	overscroll-behavior:contain;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel.is-profile-detail-open .vivi-brand-map-side-panel-inner::-webkit-scrollbar{
	display:none;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-content.is-profile-detail-open{
	height:100%;
	min-height:100%;
	overflow:hidden;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-content.is-profile-detail-open .vivi-brand-map-profile-detail-panel{
	height:100%;
	min-height:0;
	overflow-x:hidden;
	overflow-y:auto;
	overscroll-behavior:contain;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-content.is-profile-detail-open .vivi-brand-map-profile-detail-body{
	min-height:0;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-inner.is-profile-detail-open{
	overflow:hidden!important;
	overscroll-behavior:contain;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-inner.is-profile-detail-open::-webkit-scrollbar{
	display:none;
}

/* VIVI Brand Map v0.9.887：品牌內層資料載入中改用網站基礎設定 Popup / Modal loading 樣式。 */
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-loading.vivi-ajax-loading{
	min-height:min(420px,calc(100vh - 260px))!important;
	margin:0!important;
	padding:var(--vivi-space-2xl,40px) var(--vivi-space-lg,24px)!important;
	border:0!important;
	border-radius:0 !important;
	background:transparent!important;
	box-shadow:none!important;
	color:var(--vivi-color-text-muted,#6b7280)!important;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content.is-loading{
	min-height:min(420px,calc(100vh - 260px));
	justify-content:center;
}

/* VIVI Brand Map v0.9.895：生活探索左側 Loop list / 內層資訊共用網站基礎設定 Back to top，並固定內層關閉按鈕。 */
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-side-panel-top-button,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-side-panel-top-button{
	position:absolute!important;
	right:16px!important;
	bottom:16px!important;
	z-index:70!important;
	display:inline-flex!important;
	pointer-events:none;
}
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-side-panel-top-button.is-visible,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-side-panel-top-button.is-visible{
	pointer-events:auto;
}
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel.is-collapsed .vivi-brand-map-side-panel-top-button,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel.is-collapsed .vivi-brand-map-side-panel-top-button{
	display:none!important;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-panel{
	padding:var(--vivi-space-md,16px)!important;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-close{
	position:sticky!important;
	top:0!important;
	right:auto!important;
	z-index:72!important;
	display:flex!important;
	margin-left:auto!important;
	margin-bottom:-36px!important;
}
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-body{
	padding-top:var(--vivi-space-md,16px)!important;
	padding-bottom:var(--vivi-space-md,16px)!important;
}
@media (max-width:860px){
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-side-panel-top-button,
	body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-side-panel-top-button{
		right:14px!important;
		bottom:14px!important;
	}
}

/* VIVI Brand Map v0.9.900：僅修正手機版生活探索。桌機版設定不變。 */
.vivi-brand-map-mobile-zoom-controls{
	display:none;
}
@media (max-width:860px){
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap{
		--vivi-brand-map-side-panel-width:100%!important;
		--vivi-brand-map-mobile-panel-height:min(52dvh,430px);
		overflow:hidden;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-card{
		border-radius:0 !important;
		border-left:0!important;
		border-right:0!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap,
	body.vivi-lite-brand-map-page .vivi-brand-map-layout-map-only .vivi-brand-map-canvas,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap .vivi-brand-map-canvas{
		min-height:360px!important;
		touch-action:none;
	}
	
	
	
	
	
	
	
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel{
		position:absolute!important;
		top:auto!important;
		left:0!important;
		right:0!important;
		bottom:0!important;
		width:100%!important;
		height:var(--vivi-brand-map-mobile-panel-height)!important;
		max-height:calc(100dvh - var(--vivi-header-height-mobile,66px) - var(--vivi-mobile-bottom-nav-height,0px) - 16px)!important;
		border-right:0!important;
		border-top:1px solid rgba(17,24,39,.10)!important;
		border-radius:var(--vivi-radius, 8px) var(--vivi-radius, 8px) 0 0 !important;
		box-shadow:0 -18px 42px rgba(17,24,39,.18)!important;
		transform:translateY(0)!important;
		transition:transform .24s ease, box-shadow .24s ease, height .24s ease!important;
		background:rgba(255,255,255,.97)!important;
		-webkit-backdrop-filter:blur(14px)!important;
		backdrop-filter:blur(14px)!important;
	}
	body.vivi-lite-brand-map-page.admin-bar .vivi-brand-map-side-panel{
		max-height:calc(100dvh - var(--vivi-header-height-mobile,66px) - 46px - var(--vivi-mobile-bottom-nav-height,0px) - 16px)!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel.is-collapsed{
		transform:translateY(100%)!important;
		box-shadow:none!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel.is-profile-detail-open{
		height:calc(100dvh - var(--vivi-header-height-mobile,66px) - var(--vivi-mobile-bottom-nav-height,0px) - 12px)!important;
		max-height:calc(100dvh - var(--vivi-header-height-mobile,66px) - var(--vivi-mobile-bottom-nav-height,0px) - 12px)!important;
	}
	body.vivi-lite-brand-map-page.admin-bar .vivi-brand-map-side-panel.is-profile-detail-open{
		height:calc(100dvh - var(--vivi-header-height-mobile,66px) - 46px - var(--vivi-mobile-bottom-nav-height,0px) - 12px)!important;
		max-height:calc(100dvh - var(--vivi-header-height-mobile,66px) - 46px - var(--vivi-mobile-bottom-nav-height,0px) - 12px)!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-inner{
		height:100%!important;
		min-height:0!important;
		overflow:auto!important;
		-webkit-overflow-scrolling:touch;
		overscroll-behavior:contain;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-content{
		min-height:100%!important;
		padding:14px 10px 18px!important;
		gap:10px!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-head{
		padding:0 4px!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-title{
		font-size:18px!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-home-intro{
		font-size:11.5px!important;
		line-height:1.58!important;
	}
	
	
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-item{
		grid-template-columns:56px minmax(0,1fr)!important;
		justify-items:stretch!important;
		gap:12px!important;
		min-height:104px!important;
		padding:12px!important;
		border-radius:var(--vivi-radius, 8px) !important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-avatar{
		width:56px!important;
		min-width:56px!important;
		height:56px!important;
		min-height:56px!important;
		border-radius:var(--vivi-radius, 8px) !important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-name{
		width:100%!important;
		font-size:14px!important;
		text-align:left!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-name a,
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-name-button{
		text-align:left!important;
	}
	
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-actions{
		gap:9px!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-toggle{
		position:absolute!important;
		top:auto!important;
		left:auto!important;
		right:12px!important;
		bottom:calc(var(--vivi-brand-map-mobile-panel-height) + 10px)!important;
		z-index:82!important;
		width:64px!important;
		height:42px!important;
		display:inline-flex!important;
		align-items:center!important;
		justify-content:center!important;
		gap:5px!important;
		padding:0 10px!important;
		border:1px solid rgba(17,24,39,.10)!important;
		border-radius:var(--vivi-radius, 8px) !important;
		background:rgba(255,255,255,.96)!important;
		box-shadow:0 10px 24px rgba(17,24,39,.16)!important;
		color:var(--vivi-color-heading,#111827)!important;
		font-size:12px!important;
		font-weight:600!important;
		line-height:1!important;
		transform:none!important;
		pointer-events:auto;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-side-panel-toggle{
		left:auto!important;
		right:12px!important;
		bottom:14px!important;
		background:var(--vivi-color-orange,var(--vivi-color-primary,#b98454))!important;
		border-color:var(--vivi-color-orange,var(--vivi-color-primary,#b98454))!important;
		color:#fff!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-toggle::before{
		content:""!important;
		display:block!important;
		width:8px!important;
		height:8px!important;
		border:0!important;
		border-left:2px solid currentColor!important;
		border-bottom:2px solid currentColor!important;
		box-sizing:border-box!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-toggle[aria-expanded="true"]::before{
		transform:rotate(-45deg)!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-toggle[aria-expanded="false"]::before{
		transform:rotate(135deg)!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-toggle::after{
		content:"地圖";
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-toggle[aria-expanded="false"]::after{
		content:"列表";
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel.is-profile-detail-open + .vivi-brand-map-side-panel-toggle{
		display:none!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-mobile-zoom-controls{
		position:absolute;
		top:44%;
		right:10px;
		z-index:36;
		display:flex;
		flex-direction:column;
		gap:6px;
		transform:translateY(-50%);
		pointer-events:auto;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-mobile-zoom-controls button{
		appearance:none;
		-webkit-appearance:none;
		display:flex;
		align-items:center;
		justify-content:center;
		width:42px;
		height:42px;
		padding:0;
		border:1px solid rgba(17,24,39,.10);
		border-radius:var(--vivi-radius, 8px);
		background:rgba(255,255,255,.96);
		box-shadow:0 10px 24px rgba(17,24,39,.14);
		color:var(--vivi-color-heading,#111827);
		font-size:24px;
		font-weight:600;
		line-height:1;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-panel{
		border-radius:var(--vivi-radius, 8px) var(--vivi-radius, 8px) 0 0 !important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-close{
		top:0!important;
		right:0!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-body{
		padding-top:12px!important;
		padding-bottom:18px!important;
	}
}
@media (max-width:420px){
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel{
		--vivi-brand-map-mobile-panel-height:56dvh;
	}
}


/* VIVI Brand Map v0.9.904：手機版生活探索標籤列固定為橫向滑動，標籤不再用 ... 隱藏。 */

/* VIVI Brand Map v0.9.927：生活探索內層獨立 Mini Profile。樣式限定在內層內容 root，視覺回接網站基礎設定。 */
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-page{
	--vivi-brand-map-inner-gap:var(--vivi-space-md,16px);
	--vivi-brand-map-inner-card-padding:var(--vivi-space-md,16px);
	--vivi-brand-map-inner-card-radius: var(--vivi-radius, 8px);
	--vivi-brand-map-inner-cover-ratio:1950/450;
	--vivi-brand-map-inner-avatar-size:78px;
	--vivi-brand-map-inner-action-size:var(--vivi-loop-action-icon-size,26px);
	--vivi-brand-map-inner-action-gap:var(--vivi-loop-action-icon-gap,6px);
	--vivi-brand-map-inner-group-avatar-size:54px;
	--vivi-brand-map-inner-group-cover-ratio:1950/450;
	--vivi-brand-map-inner-control-size:var(--vivi-loop-pagination-button-size,34px);
	--vivi-brand-map-inner-control-gap:var(--vivi-loop-pagination-gap,12px);
	--vivi-brand-map-inner-dot-size:var(--vivi-loop-dot-size,10px);
	--vivi-brand-map-inner-dot-active-width:var(--vivi-loop-dot-active-width,36px);
	--vivi-brand-map-inner-dot-color:var(--vivi-loop-dot-color,color-mix(in srgb,var(--vivi-color-black,#000) 18%,transparent));
	--vivi-brand-map-inner-dot-active-color:var(--vivi-loop-dot-active-color,var(--vivi-color-primary,#996515));
	display:flex;
	flex-direction:column;
	gap:var(--vivi-brand-map-inner-gap);
	width:100%;
	max-width:none;
	min-width:0;
	margin:0;
	padding:0;
	box-sizing:border-box;
	font-family:var(--vivi-font-body,inherit);
	color:var(--vivi-color-text,#222);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-page *,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-page *::before,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-page *::after{
	box-sizing:border-box;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-hero,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-section{
	width:100%;
	max-width:none;
	min-width:0;
	margin:0;
	border:1px solid var(--vivi-color-border,#D6D9DD);
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-card,#fff);
	box-shadow:var(--vivi-shadow-soft,0 10px 28px rgba(0,0,0,.05));
	overflow:hidden;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-hero{
	position:relative;
	isolation:isolate;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-cover{
	position:relative;
	z-index:1;
	width:100%;
	aspect-ratio:var(--vivi-brand-map-inner-cover-ratio);
	height:auto;
	min-height:0;
	margin:0;
	background:linear-gradient(135deg,color-mix(in srgb,var(--vivi-color-bg-soft,#f7f3ee) 84%,#fff),color-mix(in srgb,var(--vivi-color-primary,#996515) 12%,#fff));
	overflow:hidden;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-cover img{
	display:block;
	width:100%;
	height:100%;
	max-width:none;
	object-fit:cover;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-hero-main{
	position:relative;
	z-index:3;
	display:grid;
	grid-template-columns:var(--vivi-brand-map-inner-avatar-size) minmax(0,1fr);
	align-items:center;
	column-gap:var(--vivi-space-md,16px);
	width:100%;
	min-width:0;
	padding:0 var(--vivi-brand-map-inner-card-padding) var(--vivi-space-sm,12px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-avatar{
	position:relative;
	z-index:4;
	display:flex;
	align-items:center;
	justify-content:center;
	width:var(--vivi-brand-map-inner-avatar-size);
	height:var(--vivi-brand-map-inner-avatar-size);
	min-width:var(--vivi-brand-map-inner-avatar-size);
	margin:calc(var(--vivi-brand-map-inner-avatar-size) * -.5) 0 0;
	border:4px solid var(--vivi-color-card,#fff);
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-card,#fff);
	box-shadow:var(--vivi-shadow-soft,0 10px 28px rgba(0,0,0,.05));
	overflow:hidden;
	text-decoration:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-avatar img{
	display:block;
	width:100%;
	height:100%;
	max-width:none;
	object-fit:cover;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-identity{
	min-width:0;
	padding-top:var(--vivi-space-sm,12px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-title{
	margin:0 0 4px;
	padding:0;
	color:var(--vivi-color-heading,#000);
	font-family:var(--vivi-font-heading,var(--vivi-font-body,inherit));
	font-size:var(--vivi-fs-h3,22px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:var(--vivi-lh-compact,1.35);
	letter-spacing:.01em;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-description{
	display:-webkit-box;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:2;
	max-width:100%;
	min-width:0;
	margin:0 0 8px;
	padding:0;
	overflow:hidden;
	color:var(--vivi-color-text,#222);
	font-size:var(--vivi-fs-small,14px);
	font-weight:var(--vivi-fw-regular,400);
	line-height:var(--vivi-lh-body,1.65);
	word-break:break-word;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-contact-row{
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	justify-content:flex-start;
	flex-wrap:nowrap;
	gap:6px;
	width:100%;
	min-width:0;
	margin:0 0 10px;
	padding:0;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-contact-item{
	display:inline-flex;
	align-items:center;
	gap:5px;
	width:100%;
	min-width:0;
	max-width:100%;
	color:var(--vivi-color-text-muted,#5A5A5A);
	font-size:var(--vivi-fs-xs,12px);
	font-weight:var(--vivi-fw-regular,400);
	line-height:var(--vivi-lh-compact,1.45);
	text-decoration:none;
}
.vivi-brand-map-profile-detail-content a.vivi-brand-map-inner-contact-item:hover,
.vivi-brand-map-profile-detail-content a.vivi-brand-map-inner-contact-item:focus-visible{
	color:var(--vivi-color-primary,#996515);
	text-decoration:none;
}
.vivi-brand-map-profile-detail-content a.vivi-brand-map-inner-contact-item:focus-visible{
	outline:2px solid color-mix(in srgb,var(--vivi-color-primary,#996515) 34%,transparent);
	outline-offset:3px;
	border-radius:var(--vivi-radius, 8px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-contact-item.is-address,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-contact-item.is-phone{
	flex:0 1 auto;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-contact-label{
	flex:0 0 auto;
	color:var(--vivi-color-heading,#000);
	font-weight:var(--vivi-fw-bold,600);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-contact-value{
	display:block;
	min-width:0;
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
}




.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-actions{
	display:inline-flex;
	align-items:center;
	justify-content:flex-end;
	gap:14px;
	width:100%;
	min-width:0;
	margin:0;
	padding:0 var(--vivi-brand-map-inner-card-padding) var(--vivi-brand-map-inner-card-padding);
	color:var(--vivi-loop-action-icon-color,var(--vivi-color-text-muted,#5A5A5A));
	font-size:var(--vivi-fs-xs,12px);
	font-weight:var(--vivi-fw-label,var(--vivi-fw-bold,600));
	line-height:1.4;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-action{
	appearance:none;
	-webkit-appearance:none;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:var(--vivi-brand-map-inner-action-gap);
	width:var(--vivi-brand-map-inner-action-size);
	height:var(--vivi-brand-map-inner-action-size);
	min-width:var(--vivi-brand-map-inner-action-size);
	margin:0;
	padding:0;
	border:0;
	border-radius:var(--vivi-radius, 8px);
	background:transparent;
	box-shadow:none;
	color:inherit;
	font:inherit;
	line-height:1;
	text-decoration:none;
	cursor:pointer;
	transition:color var(--vivi-transition-fast,.18s ease),transform var(--vivi-transition-fast,.18s ease);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-action:hover,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-action:focus-visible{
	transform:translateY(-1px);
	color:var(--vivi-loop-action-icon-active-color,var(--vivi-color-primary,#996515));
	outline:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-action:focus-visible{
	outline:2px solid color-mix(in srgb,var(--vivi-color-primary,#996515) 34%,transparent);
	outline-offset:3px;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-action .vivi-bb-icon,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-action .vivi-bb-icon::before{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:var(--vivi-brand-map-inner-action-size);
	height:var(--vivi-brand-map-inner-action-size);
	min-width:var(--vivi-brand-map-inner-action-size);
	font-size:var(--vivi-brand-map-inner-action-size);
	line-height:1;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-action span{
	position:absolute;
	width:1px;
	height:1px;
	padding:0;
	margin:-1px;
	overflow:hidden;
	clip:rect(0,0,0,0);
	clip-path:inset(50%);
	white-space:nowrap;
	border:0;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-section{
	padding:var(--vivi-brand-map-inner-card-padding);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-section-head{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:var(--vivi-space-sm,12px);
	width:100%;
	min-width:0;
	margin:0 0 var(--vivi-space-sm,12px);
	padding:0;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-section-title-group{
	display:flex;
	flex:1 1 auto;
	flex-direction:column;
	align-items:flex-start;
	min-width:0;
	gap:2px;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-section-head h3{
	margin:0;
	padding:0;
	color:var(--vivi-color-heading,#000);
	font-family:var(--vivi-font-heading,var(--vivi-font-body,inherit));
	font-size:var(--vivi-fs-body,16px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:var(--vivi-lh-compact,1.45);
	letter-spacing:.02em;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-section-note{
	margin:0;
	padding:0;
	color:var(--vivi-color-text-muted,#5A5A5A);
	font-size:var(--vivi-fs-xs,12px);
	font-weight:var(--vivi-fw-regular,400);
	line-height:var(--vivi-lh-compact,1.45);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-section-head span,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-section-head .vivi-brand-map-inner-section-more{
	flex:0 0 auto;
	margin:2px 0 0;
	padding:0;
	color:var(--vivi-color-text-muted,#5A5A5A);
	font-size:var(--vivi-fs-xs,12px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:var(--vivi-lh-compact,1.45);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-section-head .vivi-brand-map-inner-section-more{
	text-decoration:none;
	white-space:nowrap;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-section-head .vivi-brand-map-inner-section-more:hover,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-section-head .vivi-brand-map-inner-section-more:focus-visible{
	color:var(--vivi-color-primary,#996515);
	text-decoration:none;
	outline:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-carousel,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-viewport,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-track{
	width:100%;
	min-width:0;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-viewport{
	overflow-x:auto;
	overflow-y:hidden;
	scroll-snap-type:x mandatory;
	-webkit-overflow-scrolling:touch;
	scrollbar-width:none;
	border-radius:var(--vivi-radius, 8px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-viewport::-webkit-scrollbar{
	display:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-track{
	display:flex;
	align-items:stretch;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-slide{
	flex:0 0 100%;
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:var(--vivi-space-sm,12px);
	width:100%;
	min-width:100%;
	scroll-snap-align:start;
	scroll-snap-stop:always;
}

.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-carousel.is-two-up .vivi-brand-map-inner-groups-slide{
	grid-template-columns:repeat(2,minmax(0,1fr));
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-group-card{
	display:flex;
	flex-direction:column;
	align-items:stretch;
	justify-content:flex-start;
	width:100%;
	min-width:0;
	min-height:100%;
	padding:0;
	border:1px solid var(--vivi-color-border,#D6D9DD);
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-card,#fff);
	box-shadow:var(--vivi-shadow-card,var(--vivi-shadow-soft,0 10px 28px rgba(0,0,0,.05)));
	color:var(--vivi-color-heading,#000);
	text-align:left;
	text-decoration:none;
	overflow:hidden;
	transition:transform var(--vivi-transition-fast,.18s ease),border-color var(--vivi-transition-fast,.18s ease),box-shadow var(--vivi-transition-fast,.18s ease);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-group-card:hover,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-group-card:focus-visible{
	transform:translateY(-3px);
	border-color:color-mix(in srgb,var(--vivi-color-primary,#996515) 42%,var(--vivi-color-border,#D6D9DD));
	box-shadow:var(--vivi-shadow-hero,var(--vivi-shadow-card,var(--vivi-shadow-soft,0 10px 28px rgba(0,0,0,.05))));
	outline:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-group-cover{
	display:block;
	width:100%;
	aspect-ratio:var(--vivi-brand-map-inner-group-cover-ratio);
	background:
		radial-gradient(circle at 22% 18%,color-mix(in srgb,var(--vivi-color-primary,#996515) 32%,transparent),transparent 34%),
		linear-gradient(135deg,var(--vivi-color-bg-deep,#2D2A26),color-mix(in srgb,var(--vivi-color-primary,#996515) 46%,var(--vivi-color-black,#000)));
	background-size:cover;
	background-position:center;
	overflow:hidden;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-group-cover img{
	display:block;
	width:100%;
	height:100%;
	max-width:none;
	object-fit:cover;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-group-body{
	display:flex;
	flex:1 1 auto;
	flex-direction:column;
	align-items:flex-start;
	width:100%;
	min-width:0;
	padding:0 var(--vivi-space-sm,12px) var(--vivi-space-sm,12px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-group-avatar{
	position:relative;
	z-index:2;
	display:flex;
	align-items:center;
	justify-content:center;
	width:var(--vivi-brand-map-inner-group-avatar-size);
	height:var(--vivi-brand-map-inner-group-avatar-size);
	min-width:var(--vivi-brand-map-inner-group-avatar-size);
	margin:calc(var(--vivi-brand-map-inner-group-avatar-size) * -.45) 0 0;
	border:3px solid var(--vivi-color-card,#fff);
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-bg-warm,var(--vivi-color-bg-soft,#F2F4F5));
	box-shadow:var(--vivi-shadow-soft,0 10px 28px rgba(0,0,0,.05));
	overflow:hidden;
	color:var(--vivi-color-primary,#996515);
	font-size:var(--vivi-fs-h3,20px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:1;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-group-avatar img{
	display:block;
	width:100%;
	height:100%;
	max-width:none;
	object-fit:cover;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-group-name{
	min-width:0;
	max-width:100%;
	display:-webkit-box;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:2;
	overflow:hidden;
	margin:var(--vivi-space-xs,8px) 0 0;
	color:var(--vivi-color-heading,#000);
	font-family:var(--vivi-font-heading,var(--vivi-font-body,inherit));
	font-size:var(--vivi-fs-small,14px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:var(--vivi-lh-compact,1.45);
	letter-spacing:-.01em;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-nav{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:var(--vivi-brand-map-inner-control-gap);
	width:100%;
	margin:var(--vivi-loop-pagination-margin-top,var(--vivi-space-md,16px)) 0 0;
	padding:0;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-arrow{
	appearance:none;
	-webkit-appearance:none;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:var(--vivi-brand-map-inner-control-size);
	height:var(--vivi-brand-map-inner-control-size);
	min-width:var(--vivi-brand-map-inner-control-size);
	margin:0;
	padding:0;
	border:1px solid var(--vivi-loop-pagination-button-border,var(--vivi-color-border,#D6D9DD));
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-loop-pagination-button-bg,var(--vivi-color-card,#fff));
	box-shadow:var(--vivi-loop-pagination-button-shadow,0 8px 18px rgba(0,0,0,.04));
	color:var(--vivi-loop-pagination-button-color,var(--vivi-color-heading,#000));
	font-size:0;
	line-height:1;
	cursor:pointer;
	transition:border-color var(--vivi-transition-fast,.18s ease),color var(--vivi-transition-fast,.18s ease),box-shadow var(--vivi-transition-fast,.18s ease);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-arrow::before{
	display:block;
	font-size:var(--vivi-loop-pagination-arrow-font-size,var(--vivi-fs-body-lg,18px));
	font-weight:var(--vivi-fw-bold,600);
	line-height:1;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-arrow.is-prev::before{content:"‹";}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-arrow.is-next::before{content:"›";}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-arrow:hover,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-arrow:focus-visible{
	border-color:var(--vivi-loop-pagination-button-hover-border,color-mix(in srgb,var(--vivi-color-primary,#996515) 42%,transparent));
	color:var(--vivi-loop-pagination-button-hover-color,var(--vivi-color-primary,#996515));
	outline:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-arrow:disabled{
	opacity:.38;
	cursor:default;
	box-shadow:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-dots{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:var(--vivi-loop-dots-gap,10px);
	width:auto;
	margin:0;
	padding:0;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-dots button{
	appearance:none;
	-webkit-appearance:none;
	display:block;
	width:var(--vivi-brand-map-inner-dot-size);
	height:var(--vivi-brand-map-inner-dot-size);
	min-width:0;
	margin:0;
	padding:0;
	border:0;
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-brand-map-inner-dot-color);
	box-shadow:none;
	font-size:0;
	cursor:pointer;
	transition:width var(--vivi-transition-fast,.18s ease),background-color var(--vivi-transition-fast,.18s ease);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-dots button.is-active{
	width:var(--vivi-brand-map-inner-dot-active-width);
	background:var(--vivi-brand-map-inner-dot-active-color);
}
/* VIVI Brand Map v0.9.984：恢復生活探索內層 94小確幸卡片 Padding。 */
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-section.vivi-brand-map-inner-94-deals{
	padding:var(--vivi-brand-map-inner-card-padding,var(--vivi-space-md,16px))!important;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-deals{
	display:flex;
	flex-direction:column;
	align-items:stretch;
	gap:var(--vivi-space-md,16px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown{
	width:100%;
	min-width:0;
	margin:0;
	padding:0;
	border:1px solid color-mix(in srgb,var(--vivi-color-primary,#996515) 24%,var(--vivi-color-border,#D6D9DD));
	border-radius:var(--vivi-radius, 8px);
	background:linear-gradient(135deg,var(--vivi-color-card,#fff) 0%,color-mix(in srgb,var(--vivi-color-bg-warm,#F7F3EE) 86%,transparent) 100%);
	box-shadow:var(--vivi-shadow-soft,0 10px 28px rgba(0,0,0,.05));
	overflow:hidden;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-countdown-panel{
	display:grid;
	grid-template-columns:1fr;
	align-content:center;
	gap:var(--vivi-space-sm,12px);
	width:100%;
	min-width:0;
	padding:var(--vivi-space-md,16px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-countdown-label{
	display:block;
	width:100%;
	margin:0;
	padding:0;
	color:var(--vivi-color-text-light,#647385);
	font-size:var(--vivi-fs-small,14px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:var(--vivi-lh-compact,1.45);
	letter-spacing:.04em;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-countdown-time{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:var(--vivi-space-xs,8px);
	width:100%;
	min-width:0;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-countdown-time span{
	display:grid;
	align-content:center;
	justify-items:center;
	min-height:66px;
	padding:8px 4px;
	border:1px solid color-mix(in srgb,var(--vivi-color-black,#000) 8%,transparent);
	border-radius:var(--vivi-radius, 8px);
	background:color-mix(in srgb,var(--vivi-color-card,#fff) 94%,transparent);
	box-shadow:0 6px 14px rgba(0,0,0,.035);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-countdown-time strong{
	color:var(--vivi-color-heading,#000);
	font-size:var(--vivi-fs-h3,22px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:1;
	letter-spacing:.02em;
	font-variant-numeric:tabular-nums;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-countdown-time em{
	margin-top:5px;
	color:var(--vivi-color-text-muted,#5A5A5A);
	font-size:var(--vivi-fs-xs,12px);
	font-style:normal;
	font-weight:var(--vivi-fw-bold,600);
	line-height:1.2;
}
/* v0.10.237：生活探索內層倒數卡片一律使用活動未開始時的中性文字與版型；
 * 活動中僅三個倒數時間格改為紅底白字。 */
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown.is-vivi-deal-active > .vivi-countdown-panel > .vivi-countdown-time > span{
	background:#C1121F!important;
	border-color:#C1121F!important;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown.is-vivi-deal-active > .vivi-countdown-panel > .vivi-countdown-time > span > strong,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown.is-vivi-deal-active > .vivi-countdown-panel > .vivi-countdown-time > span > em{
	color:#fff!important;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-94-countdown-note{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:100%;
	min-height:34px;
	margin:0;
	padding:7px 12px;
	border:1px solid color-mix(in srgb,var(--vivi-color-primary,#996515) 22%,transparent);
	border-radius:var(--vivi-radius, 8px);
	background:color-mix(in srgb,var(--vivi-color-card,#fff) 72%,transparent);
	color:var(--vivi-color-text-muted,#5A5A5A);
	font-size:var(--vivi-fs-xs,12px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:1.35;
	text-align:center;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-94-countdown-cta{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:100%;
	min-height:42px;
	margin:0;
	padding:9px 16px;
	border:1px solid var(--vivi-color-primary,#996515);
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-primary,#996515);
	color:var(--vivi-color-card,#fff);
	font-size:var(--vivi-fs-small,14px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:1.35;
	text-align:center;
	text-decoration:none;
	box-shadow:var(--vivi-shadow-soft,0 10px 28px rgba(0,0,0,.05));
	transition:background-color var(--vivi-transition-fast,.18s ease),border-color var(--vivi-transition-fast,.18s ease),box-shadow var(--vivi-transition-fast,.18s ease),transform var(--vivi-transition-fast,.18s ease);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-94-countdown-cta:hover,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-94-countdown-cta:focus-visible{
	background:color-mix(in srgb,var(--vivi-color-primary,#996515) 88%,var(--vivi-color-black,#000));
	border-color:color-mix(in srgb,var(--vivi-color-primary,#996515) 88%,var(--vivi-color-black,#000));
	color:var(--vivi-color-card,#fff);
	box-shadow:var(--vivi-shadow-card,var(--vivi-shadow-soft,0 10px 28px rgba(0,0,0,.05)));
	text-decoration:none;
	transform:translateY(-1px);
	outline:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-deals .vivi-brand-map-inner-section-head{
	margin:0;
}
@media (max-width:767px){
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-countdown-panel{
		padding:var(--vivi-space-sm,12px);
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-countdown-time span{
		min-height:52px;
		border-radius:var(--vivi-radius, 8px);
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-countdown-time strong{
		font-size:var(--vivi-fs-body-lg,18px);
	}
}

.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-carousel,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-viewport,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-track{
	width:100%;
	min-width:0;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-viewport{
	overflow-x:auto;
	overflow-y:hidden;
	scroll-snap-type:x mandatory;
	-webkit-overflow-scrolling:touch;
	scrollbar-width:none;
	border-radius:var(--vivi-radius, 8px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-viewport::-webkit-scrollbar{
	display:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-track{
	display:flex;
	align-items:stretch;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-slide{
	flex:0 0 100%;
	display:flex;
	align-items:stretch;
	width:100%;
	min-width:100%;
	scroll-snap-align:start;
	scroll-snap-stop:always;
}

.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities.is-latest .vivi-brand-map-inner-activities-slide{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:var(--vivi-space-sm,12px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities.is-latest .vivi-brand-map-inner-activity-card{
	min-height:0;
	box-shadow:var(--vivi-shadow-soft,0 10px 28px rgba(0,0,0,.05));
}
/* v0.10.270：生活探索內層「最新動態」媒體統一為 1:1；僅調整顯示容器。 */
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities.is-latest .vivi-brand-map-inner-activity-media{
	aspect-ratio:1/1;
	height:auto;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities.is-latest .vivi-brand-map-inner-activity-body{
	padding:var(--vivi-space-xs,8px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities.is-latest .vivi-brand-map-inner-activity-meta{
	gap:6px;
	margin-bottom:6px;
	font-size:var(--vivi-fs-xs,12px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities.is-latest .vivi-brand-map-inner-activity-title{
	font-size:var(--vivi-fs-small,14px);
	line-height:var(--vivi-lh-compact,1.45);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities.is-latest .vivi-brand-map-inner-activity-excerpt{
	-webkit-line-clamp:2;
	margin-top:6px;
	font-size:var(--vivi-fs-xs,12px);
	line-height:var(--vivi-lh-body,1.72);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities.is-latest .vivi-brand-map-inner-activity-footer{
	gap:var(--vivi-space-xs,8px);
	padding-top:var(--vivi-space-sm,12px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities.is-mentioned{
	border-color:color-mix(in srgb,var(--vivi-color-primary,#996515) 24%,var(--vivi-color-border,#D6D9DD));
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-empty{
	width:100%;
	padding:var(--vivi-space-md,16px);
	border:1px dashed var(--vivi-color-border,#D6D9DD);
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-bg-soft,#F2F4F5);
	color:var(--vivi-color-text-muted,#5A5A5A);
	font-size:var(--vivi-fs-small,14px);
	font-weight:var(--vivi-fw-regular,400);
	line-height:var(--vivi-lh-body,1.72);
	text-align:center;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-card{
	display:flex;
	flex-direction:column;
	align-items:stretch;
	justify-content:flex-start;
	width:100%;
	min-width:0;
	padding:0;
	border:1px solid var(--vivi-color-border,#D6D9DD);
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-card,#fff);
	box-shadow:var(--vivi-shadow-card,var(--vivi-shadow-soft,0 10px 28px rgba(0,0,0,.05)));
	color:var(--vivi-color-text,#222);
	overflow:hidden;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-media{
	display:block;
	position:relative;
	width:100%;
	aspect-ratio:16/9;
	background:linear-gradient(135deg,color-mix(in srgb,var(--vivi-color-primary,#996515) 18%,var(--vivi-color-card,#fff)),var(--vivi-color-bg-soft,#F2F4F5));
	overflow:hidden;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-media-link{
	display:block;
	width:100%;
	height:100%;
	color:inherit;
	text-decoration:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-youtube{
	display:block;
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	background:var(--vivi-color-bg-soft,#F2F4F5);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-youtube iframe{
	display:block;
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	border:0;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-media img{
	display:block;
	width:100%;
	height:100%;
	max-width:none;
	object-fit:cover;
	transition:transform var(--vivi-transition-slow,.28s ease);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-card:hover .vivi-brand-map-inner-activity-media img,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-card:focus-within .vivi-brand-map-inner-activity-media img{
	transform:scale(1.025);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-placeholder{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	height:100%;
	background:
		radial-gradient(circle at 22% 18%,color-mix(in srgb,var(--vivi-color-primary,#996515) 28%,transparent),transparent 34%),
		linear-gradient(135deg,var(--vivi-color-bg-soft,#F2F4F5),color-mix(in srgb,var(--vivi-color-primary,#996515) 16%,var(--vivi-color-card,#fff)));
	color:var(--vivi-color-primary,#996515);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-placeholder span{
	display:flex;
	align-items:center;
	justify-content:center;
	width:54px;
	height:54px;
	border-radius:var(--vivi-radius, 8px);
	background:color-mix(in srgb,var(--vivi-color-card,#fff) 88%,transparent);
	box-shadow:var(--vivi-shadow-soft,0 10px 28px rgba(0,0,0,.05));
	font-family:var(--vivi-font-heading,var(--vivi-font-body,inherit));
	font-size:var(--vivi-fs-h3,22px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:1;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-body{
	display:flex;
	flex:1 1 auto;
	flex-direction:column;
	align-items:stretch;
	width:100%;
	min-width:0;
	padding:var(--vivi-space-sm,12px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-meta{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:var(--vivi-space-xs,8px);
	width:100%;
	min-width:0;
	margin:0 0 var(--vivi-space-xs,8px);
	color:var(--vivi-color-text-muted,#5A5A5A);
	font-size:var(--vivi-fs-xs,12px);
	font-weight:var(--vivi-fw-regular,400);
	line-height:var(--vivi-lh-compact,1.45);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-meta span,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-meta time{
	min-width:0;
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-meta time{
	flex:0 0 auto;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-title{
	min-width:0;
	margin:0;
	padding:0;
	font-family:var(--vivi-font-heading,var(--vivi-font-body,inherit));
	font-size:var(--vivi-fs-body,16px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:var(--vivi-lh-compact,1.45);
	letter-spacing:-.01em;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-title a{
	display:-webkit-box;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:2;
	overflow:hidden;
	color:var(--vivi-color-heading,#000);
	text-decoration:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-title a:hover,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-title a:focus-visible{
	color:var(--vivi-color-primary,#996515);
	outline:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-excerpt{
	display:-webkit-box;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:3;
	overflow:hidden;
	min-width:0;
	margin:var(--vivi-space-xs,8px) 0 0;
	padding:0;
	color:var(--vivi-color-text,#222);
	font-size:var(--vivi-fs-small,14px);
	font-weight:var(--vivi-fw-regular,400);
	line-height:var(--vivi-lh-body,1.72);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-footer{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:var(--vivi-space-sm,12px);
	width:100%;
	min-width:0;
	margin-top:auto;
	padding-top:var(--vivi-space-md,16px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-counts{
	display:flex;
	align-items:center;
	gap:var(--vivi-loop-action-icon-gap,8px);
	min-width:0;
	color:var(--vivi-loop-action-icon-color,var(--vivi-color-text-muted,#5A5A5A));
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-count{
	display:inline-flex;
	align-items:center;
	gap:4px;
	min-width:0;
	font-size:var(--vivi-fs-xs,12px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:1;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-count .vivi-bb-icon,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-count .vivi-bb-icon::before,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-link .vivi-bb-icon,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-link .vivi-bb-icon::before{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:var(--vivi-loop-action-icon-size,26px);
	height:var(--vivi-loop-action-icon-size,26px);
	min-width:var(--vivi-loop-action-icon-size,26px);
	font-size:var(--vivi-loop-action-icon-size,26px);
	line-height:1;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-link{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:var(--vivi-loop-action-icon-size,26px);
	height:var(--vivi-loop-action-icon-size,26px);
	min-width:var(--vivi-loop-action-icon-size,26px);
	color:var(--vivi-loop-action-icon-color,var(--vivi-color-text-muted,#5A5A5A));
	text-decoration:none;
	transition:color var(--vivi-transition-fast,.18s ease),transform var(--vivi-transition-fast,.18s ease);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-link:hover,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-link:focus-visible{
	color:var(--vivi-loop-action-icon-active-color,var(--vivi-color-primary,#996515));
	transform:translateY(-1px);
	outline:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-nav{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:var(--vivi-brand-map-inner-control-gap);
	width:100%;
	margin:var(--vivi-loop-pagination-margin-top,var(--vivi-space-md,16px)) 0 0;
	padding:0;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-arrow{
	appearance:none;
	-webkit-appearance:none;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:var(--vivi-brand-map-inner-control-size);
	height:var(--vivi-brand-map-inner-control-size);
	min-width:var(--vivi-brand-map-inner-control-size);
	margin:0;
	padding:0;
	border:1px solid var(--vivi-loop-pagination-button-border,var(--vivi-color-border,#D6D9DD));
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-loop-pagination-button-bg,var(--vivi-color-card,#fff));
	box-shadow:var(--vivi-loop-pagination-button-shadow,0 8px 18px rgba(0,0,0,.04));
	color:var(--vivi-loop-pagination-button-color,var(--vivi-color-heading,#000));
	font-size:0;
	line-height:1;
	cursor:pointer;
	transition:border-color var(--vivi-transition-fast,.18s ease),color var(--vivi-transition-fast,.18s ease),box-shadow var(--vivi-transition-fast,.18s ease);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-arrow::before{
	display:block;
	font-size:var(--vivi-loop-pagination-arrow-font-size,var(--vivi-fs-body-lg,18px));
	font-weight:var(--vivi-fw-bold,600);
	line-height:1;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-arrow.is-prev::before{content:"‹";}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-arrow.is-next::before{content:"›";}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-arrow:hover,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-arrow:focus-visible{
	border-color:var(--vivi-loop-pagination-button-hover-border,color-mix(in srgb,var(--vivi-color-primary,#996515) 42%,transparent));
	color:var(--vivi-loop-pagination-button-hover-color,var(--vivi-color-primary,#996515));
	outline:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-arrow:disabled{
	opacity:.38;
	cursor:default;
	box-shadow:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-dots{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:var(--vivi-loop-dots-gap,10px);
	width:auto;
	margin:0;
	padding:0;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-dots button{
	appearance:none;
	-webkit-appearance:none;
	display:block;
	width:var(--vivi-brand-map-inner-dot-size);
	height:var(--vivi-brand-map-inner-dot-size);
	min-width:0;
	margin:0;
	padding:0;
	border:0;
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-brand-map-inner-dot-color);
	box-shadow:none;
	font-size:0;
	cursor:pointer;
	transition:width var(--vivi-transition-fast,.18s ease),background-color var(--vivi-transition-fast,.18s ease);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-dots button.is-active{
	width:var(--vivi-brand-map-inner-dot-active-width);
	background:var(--vivi-brand-map-inner-dot-active-color);
}
@media (max-width:767px){
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-page{
		--vivi-brand-map-inner-avatar-size:68px;
		--vivi-brand-map-inner-group-avatar-size:48px;
		--vivi-brand-map-inner-card-padding:var(--vivi-space-sm,12px);
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-title{
		font-size:var(--vivi-fs-body-lg,18px);
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-description{
		display:-webkit-box !important;
		-webkit-box-orient:vertical !important;
		-webkit-line-clamp:2 !important;
		max-height:3.1em;
		font-size:var(--vivi-fs-xs,12px);
		line-height:1.55;
		overflow:hidden !important;
		text-overflow:ellipsis;
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-contact-row{
		display:grid !important;
		grid-template-columns:minmax(0,1fr) !important;
		align-items:start !important;
		gap:5px;
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-contact-row > .vivi-brand-map-inner-contact-item{
		display:flex !important;
		width:100% !important;
		min-width:0 !important;
		max-width:100% !important;
		font-size:var(--vivi-fs-xs,12px);
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-contact-item.is-address,
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-contact-item.is-phone{
		grid-column:1 / -1 !important;
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-slide{
		gap:var(--vivi-space-xs,8px);
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-group-body{
		padding:0 var(--vivi-space-xs,8px) var(--vivi-space-xs,8px);
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-group-name{
		font-size:var(--vivi-fs-xs,12px);
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities.is-latest .vivi-brand-map-inner-activities-slide{
		grid-template-columns:repeat(2,minmax(0,1fr));
		gap:var(--vivi-space-xs,8px);
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-body{
		padding:var(--vivi-space-xs,8px);
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-title{
		font-size:var(--vivi-fs-small,14px);
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-excerpt{
		font-size:var(--vivi-fs-xs,12px);
		-webkit-line-clamp:2;
	}
}

/* VIVI Brand Map v0.9.933：修正手機版生活探索高度跑位。
   原因：共用手機 Header lock 會對 body.vivi-lite-page 加上 bottom nav padding，
   生活探索頁本身又已在 main 高度扣除底部快捷列，造成地圖下方多出一段空白。 */
body.vivi-lite-page.vivi-lite-brand-map-page{
	height:100dvh!important;
	min-height:100dvh!important;
	padding-bottom:0!important;
	overflow:hidden!important;
}
body.vivi-lite-page.vivi-lite-brand-map-page>.vivi-page{
	height:100dvh!important;
	min-height:0!important;
	padding-bottom:0!important;
	overflow:hidden!important;
	box-sizing:border-box!important;
}
@media (max-width:860px){
	body.vivi-lite-page.vivi-lite-brand-map-page .vivi-brand-archive-main-no-hero{
		height:calc(100dvh - var(--vivi-header-height-mobile,66px) - var(--vivi-mobile-bottom-nav-height,0px))!important;
		min-height:0!important;
	}
	body.admin-bar.vivi-lite-page.vivi-lite-brand-map-page .vivi-brand-archive-main-no-hero{
		height:calc(100dvh - var(--vivi-header-height-mobile,66px) - 46px - var(--vivi-mobile-bottom-nav-height,0px))!important;
	}
	body.vivi-lite-page.vivi-lite-brand-map-page .vivi-brand-map-layout-map-only,
	body.vivi-lite-page.vivi-lite-brand-map-page .vivi-brand-map-panel,
	body.vivi-lite-page.vivi-lite-brand-map-page .vivi-brand-map-card,
	body.vivi-lite-page.vivi-lite-brand-map-page .vivi-brand-map-form,
	body.vivi-lite-page.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap{
		height:100%!important;
		min-height:0!important;
	}
}


/* VIVI Brand Map v0.9.934：手機瀏覽器重新開啟 / pageshow 時使用 JS 同步可視高度，避免 iOS Safari 初次回復頁面時 100dvh 暫態錯誤造成地圖跑位。 */

/* VIVI Brand Map v0.10.258：Marker 名稱統一顯示於 Marker 右側並垂直置中。 */
.vivi-brand-map-marker-name-label {
  max-width: min(220px, 42vw);
  padding: 5px 9px;
  border-radius: var(--vivi-radius, 8px);
  background: rgba(255,255,255,.96);
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: 0 8px 20px rgba(0,0,0,.16), 0 1px 4px rgba(0,0,0,.10);
  color: var(--vivi-color-text, #202124);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.25;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transform: none;
  z-index: 980;
  will-change: transform, left, top;
}

.vivi-brand-map-marker-name-label.is-active-marker-label {
  max-width: min(260px, 60vw);
  transform: none;
  padding: 6px 10px;
  background: var(--vivi-color-card, #ffffff);
  border-color: rgba(153,101,21,.28);
  box-shadow: 0 12px 28px rgba(0,0,0,.22), 0 2px 8px rgba(0,0,0,.12);
  color: var(--vivi-color-black, #000000);
  z-index: 1100;
}

.vivi-brand-map-marker-name-label.is-auto-marker-label {
  max-width: min(160px, 32vw);
  min-height: 28px;
  padding: 5px 9px;
  border-color: rgba(0,0,0,.12);
  box-shadow: 0 6px 16px rgba(0,0,0,.15), 0 1px 3px rgba(0,0,0,.10);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.25;
  z-index: 970;
}

.vivi-brand-map-marker-name-label.is-vivi-selected-marker-label {
  border-color: rgba(153,101,21,.52);
  box-shadow: 0 7px 18px rgba(153,101,21,.20), 0 1px 4px rgba(0,0,0,.12);
  font-weight: 720;
  z-index: 985;
}

.vivi-brand-map-marker-name-label.is-auto-marker-label.is-search-match-marker-label {
  border-color: rgba(0,0,0,.34);
  box-shadow: 0 8px 20px rgba(0,0,0,.21), 0 1px 4px rgba(0,0,0,.13);
  font-weight: 750;
  z-index: 990;
}

.vivi-brand-map-marker-name-label.is-mobile-marker-label {
  max-width: min(210px, 56vw);
  font-size: 12px;
}

.vivi-brand-map-marker-name-label.is-mobile-marker-label.is-auto-marker-label {
  max-width: min(145px, 44vw);
  min-height: 27px;
  padding: 5px 8px;
  font-size: 11.5px;
}


.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-carousel,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-viewport,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-track{
	width:100%;
	min-width:0;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-viewport{
	overflow-x:auto;
	overflow-y:hidden;
	scroll-snap-type:x mandatory;
	-webkit-overflow-scrolling:touch;
	scrollbar-width:none;
	border-radius:var(--vivi-radius, 8px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-viewport::-webkit-scrollbar{
	display:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-track{
	display:flex;
	align-items:stretch;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-slide{
	flex:0 0 100%;
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:var(--vivi-space-sm,12px);
	width:100%;
	min-width:100%;
	scroll-snap-align:start;
	scroll-snap-stop:always;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-card{
	display:flex;
	flex-direction:column;
	align-items:stretch;
	width:100%;
	min-width:0;
	min-height:100%;
	border:1px solid var(--vivi-color-border,#D6D9DD);
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-card,#fff);
	box-shadow:var(--vivi-shadow-card,var(--vivi-shadow-soft,0 10px 28px rgba(0,0,0,.05)));
	overflow:hidden;
	transition:transform var(--vivi-transition-fast,.18s ease),border-color var(--vivi-transition-fast,.18s ease),box-shadow var(--vivi-transition-fast,.18s ease);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-card:hover,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-card:focus-within{
	transform:translateY(-3px);
	border-color:color-mix(in srgb,var(--vivi-color-primary,#996515) 42%,var(--vivi-color-border,#D6D9DD));
	box-shadow:var(--vivi-shadow-hero,var(--vivi-shadow-card,var(--vivi-shadow-soft,0 10px 28px rgba(0,0,0,.05))));
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-media{
	position:relative;
	display:block;
	width:100%;
	aspect-ratio:1/1;
	background:var(--vivi-color-bg-soft,#F2F4F5);
	color:inherit;
	text-decoration:none;
	overflow:hidden;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-img,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-media img{
	display:block;
	width:100%;
	height:100%;
	max-width:none;
	object-fit:cover;
	transition:transform var(--vivi-transition-normal,.24s ease);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-card:hover .vivi-brand-map-inner-ticket-img,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-card:hover .vivi-brand-map-inner-ticket-media img{
	transform:scale(1.035);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-placeholder{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	height:100%;
	background:
		radial-gradient(circle at 22% 18%,color-mix(in srgb,var(--vivi-color-primary,#996515) 28%,transparent),transparent 34%),
		linear-gradient(135deg,var(--vivi-color-bg-soft,#F2F4F5),color-mix(in srgb,var(--vivi-color-primary,#996515) 16%,var(--vivi-color-card,#fff)));
	color:var(--vivi-color-primary,#996515);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-placeholder span{
	display:flex;
	align-items:center;
	justify-content:center;
	width:54px;
	height:54px;
	border-radius:var(--vivi-radius, 8px);
	background:color-mix(in srgb,var(--vivi-color-card,#fff) 88%,transparent);
	box-shadow:var(--vivi-shadow-soft,0 10px 28px rgba(0,0,0,.05));
	font-family:var(--vivi-font-heading,var(--vivi-font-body,inherit));
	font-size:var(--vivi-fs-h3,22px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:1;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-discount,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-soldout{
	position:absolute;
	z-index:2;
	display:inline-flex;
	align-items:center;
	max-width:calc(100% - 16px);
	min-height:24px;
	padding:4px 8px;
	border-radius:var(--vivi-radius, 8px);
	font-size:var(--vivi-fs-xs,12px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:1.2;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-discount{
	left:8px;
	bottom:8px;
	background:var(--vivi-color-primary,#996515);
	color:var(--vivi-color-card,#fff);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-soldout{
	right:8px;
	bottom:8px;
	background:rgba(0,0,0,.72);
	color:#fff;
	font-style:normal;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-body{
	display:flex;
	flex:1 1 auto;
	flex-direction:column;
	align-items:stretch;
	width:100%;
	min-width:0;
	padding:var(--vivi-space-sm,12px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-title{
	min-width:0;
	margin:0;
	padding:0;
	font-family:var(--vivi-font-heading,var(--vivi-font-body,inherit));
	font-size:var(--vivi-fs-small,14px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:var(--vivi-lh-compact,1.45);
	letter-spacing:-.01em;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-title a{
	display:-webkit-box;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:2;
	overflow:hidden;
	color:var(--vivi-color-heading,#000);
	text-decoration:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-title a:hover,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-title a:focus-visible{
	color:var(--vivi-color-primary,#996515);
	outline:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-price-row{
	display:flex;
	align-items:baseline;
	justify-content:flex-start;
	flex-wrap:wrap;
	gap:4px 8px;
	width:100%;
	min-width:0;
	margin-top:auto;
	padding-top:var(--vivi-space-sm,12px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-price-old{
	color:var(--vivi-color-text-muted,#5A5A5A);
	font-size:var(--vivi-fs-xs,12px);
	font-weight:var(--vivi-fw-regular,400);
	line-height:1.2;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-price-sale{
	color:var(--vivi-color-primary,#996515);
	font-size:var(--vivi-fs-small,14px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:1.2;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-nav{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:var(--vivi-brand-map-inner-control-gap);
	width:100%;
	margin:var(--vivi-loop-pagination-margin-top,var(--vivi-space-md,16px)) 0 0;
	padding:0;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-arrow{
	appearance:none;
	-webkit-appearance:none;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:var(--vivi-brand-map-inner-control-size);
	height:var(--vivi-brand-map-inner-control-size);
	min-width:var(--vivi-brand-map-inner-control-size);
	margin:0;
	padding:0;
	border:1px solid var(--vivi-loop-pagination-button-border,var(--vivi-color-border,#D6D9DD));
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-loop-pagination-button-bg,var(--vivi-color-card,#fff));
	box-shadow:var(--vivi-loop-pagination-button-shadow,0 8px 18px rgba(0,0,0,.04));
	color:var(--vivi-loop-pagination-button-color,var(--vivi-color-heading,#000));
	font-size:0;
	line-height:1;
	cursor:pointer;
	transition:border-color var(--vivi-transition-fast,.18s ease),color var(--vivi-transition-fast,.18s ease),box-shadow var(--vivi-transition-fast,.18s ease);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-arrow::before{
	display:block;
	font-size:var(--vivi-loop-pagination-arrow-font-size,var(--vivi-fs-body-lg,18px));
	font-weight:var(--vivi-fw-bold,600);
	line-height:1;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-arrow.is-prev::before{content:"‹";}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-arrow.is-next::before{content:"›";}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-arrow:hover,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-arrow:focus-visible{
	border-color:var(--vivi-loop-pagination-button-hover-border,color-mix(in srgb,var(--vivi-color-primary,#996515) 42%,transparent));
	color:var(--vivi-loop-pagination-button-hover-color,var(--vivi-color-primary,#996515));
	outline:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-arrow:disabled{
	opacity:.38;
	cursor:default;
	box-shadow:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-dots{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:var(--vivi-loop-dots-gap,10px);
	width:auto;
	margin:0;
	padding:0;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-dots button{
	appearance:none;
	-webkit-appearance:none;
	display:block;
	width:var(--vivi-brand-map-inner-dot-size);
	height:var(--vivi-brand-map-inner-dot-size);
	min-width:0;
	margin:0;
	padding:0;
	border:0;
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-brand-map-inner-dot-color);
	box-shadow:none;
	font-size:0;
	cursor:pointer;
	transition:width var(--vivi-transition-fast,.18s ease),background-color var(--vivi-transition-fast,.18s ease);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-dots button.is-active{
	width:var(--vivi-brand-map-inner-dot-active-width);
	background:var(--vivi-brand-map-inner-dot-active-color);
}
@media (max-width:767px){
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-slide{
		gap:var(--vivi-space-xs,8px);
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-body{
		padding:var(--vivi-space-xs,8px);
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-title,
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-price-sale{
		font-size:var(--vivi-fs-xs,12px);
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-discount,
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-soldout{
		min-height:20px;
		padding:3px 6px;
		font-size:11px;
	}
}
















@media (max-width:860px){
	body.vivi-lite-brand-archive-page .vivi-brand-map-canvas-wrap,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap{
		--vivi-brand-map-mobile-map-control-top:44%;
		--vivi-brand-map-mobile-map-control-size:42px;
		--vivi-brand-map-mobile-map-control-gap:6px;
		--vivi-brand-map-mobile-map-control-right:10px;
	}
	
	
	
	
	
	
	
	body.vivi-lite-brand-archive-page .vivi-brand-map-mobile-zoom-controls,
	body.vivi-lite-brand-map-page .vivi-brand-map-mobile-zoom-controls{
		top:var(--vivi-brand-map-mobile-map-control-top,44%)!important;
		right:var(--vivi-brand-map-mobile-map-control-right,10px)!important;
		z-index:36!important;
		gap:var(--vivi-brand-map-mobile-map-control-gap,6px)!important;
	}
	body.vivi-lite-brand-archive-page .vivi-brand-map-mobile-zoom-controls button,
	body.vivi-lite-brand-map-page .vivi-brand-map-mobile-zoom-controls button{
		width:var(--vivi-brand-map-mobile-map-control-size,42px)!important;
		height:var(--vivi-brand-map-mobile-map-control-size,42px)!important;
		min-width:var(--vivi-brand-map-mobile-map-control-size,42px)!important;
		min-height:var(--vivi-brand-map-mobile-map-control-size,42px)!important;
	}
}

/* VIVI Brand Map v0.9.967：手機版初次載入先用 CSS 固定為收合狀態，避免 JS 初始化前底部列表先展開再收合造成閃動。 */
@media (max-width:860px){
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.is-initial-mobile-collapsed .vivi-brand-map-side-panel:not(.is-profile-detail-open),
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap:not(.has-side-panel-expanded) .vivi-brand-map-side-panel:not(.is-profile-detail-open){
		transform:translateY(100%)!important;
		box-shadow:none!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.is-initial-mobile-collapsed .vivi-brand-map-side-panel-toggle,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap:not(.has-side-panel-expanded) .vivi-brand-map-side-panel-toggle{
		left:auto!important;
		right:12px!important;
		bottom:14px!important;
		background:var(--vivi-color-orange,var(--vivi-color-primary,#b98454))!important;
		border-color:var(--vivi-color-orange,var(--vivi-color-primary,#b98454))!important;
		color:#fff!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.is-initial-mobile-collapsed .vivi-brand-map-side-panel-toggle::before,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap:not(.has-side-panel-expanded) .vivi-brand-map-side-panel-toggle::before{
		transform:rotate(135deg)!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.is-initial-mobile-collapsed .vivi-brand-map-side-panel-toggle::after,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap:not(.has-side-panel-expanded) .vivi-brand-map-side-panel-toggle::after{
		content:"列表"!important;
	}
}


body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-list.vivi-brand-map-loop-list,
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-list.vivi-brand-map-loop-list{
	margin-top:4px!important;
}
@media (max-width:860px){
	body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-list.vivi-brand-map-loop-list,
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-list.vivi-brand-map-loop-list{
		margin-top:6px!important;
	}
}


/* VIVI Brand Map v0.9.970：內層動態互動改為可操作按鈕，避免外層 Popup 開啟事件影響點讚與留言。 */
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-actions{
	display:inline-flex;
	align-items:center;
	gap:var(--vivi-loop-action-icon-gap,6px);
	min-width:0;
	color:var(--vivi-loop-action-icon-color,var(--vivi-color-text-muted,#5A5A5A));
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-actions .vivi-activity-count{
	display:inline-flex;
	align-items:center;
	gap:4px;
	appearance:none;
	-webkit-appearance:none;
	border:0;
	background:transparent;
	padding:0;
	margin:0;
	font:inherit;
	color:inherit;
	cursor:pointer;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-actions .vivi-activity-count .vivi-bb-icon,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-actions .vivi-activity-count .vivi-bb-icon::before{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:var(--vivi-loop-action-icon-size,26px);
	height:var(--vivi-loop-action-icon-size,26px);
	min-width:var(--vivi-loop-action-icon-size,26px);
	font-size:var(--vivi-loop-action-icon-size,26px);
	line-height:1;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-actions .vivi-activity-count:hover,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-actions .vivi-activity-count:focus-visible{
	color:var(--vivi-loop-action-icon-active-color,var(--vivi-color-primary,#996515));
	outline:none;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-actions .vivi-activity-count:focus-visible{
	outline:2px solid color-mix(in srgb,var(--vivi-color-primary,#996515) 34%,transparent);
	outline-offset:3px;
	border-radius:var(--vivi-radius, 8px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-actions .vivi-activity-like-count.is-liked,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-actions .vivi-activity-like-count.is-liked .vivi-bb-icon,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-actions .vivi-activity-like-count.is-liked .vivi-activity-count-number{
	color:var(--vivi-loop-action-icon-active-color,var(--vivi-color-primary,#996515));
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-actions .vivi-activity-count.is-disabled,
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-actions .vivi-activity-count:disabled{
	cursor:not-allowed;
	opacity:.45;
}

/* VIVI Brand Map v0.9.975：生活探索內層移除 VIVI 家族上方獨立購票流程圖片區塊。 */
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-section{
	display:flex;
	flex-direction:column;
	gap:var(--vivi-space-md,16px);
	padding:var(--vivi-brand-map-inner-card-padding);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-panel{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	min-width:0;
	margin:0;
	padding:0;
	border:0;
	background:transparent;
	border-radius:var(--vivi-radius, 8px);
	overflow:hidden;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-guide-img{
	display:block;
	width:100%;
	max-width:100%;
	height:auto;
	aspect-ratio:auto;
	object-fit:contain;
	border-radius:var(--vivi-radius, 8px);
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-copy{
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	gap:0;
	width:100%;
	min-width:0;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-kicker{
	margin:0 0 8px;
	color:var(--vivi-color-primary,#996515);
	font-size:var(--vivi-fs-xs,12px);
	font-weight:var(--vivi-fw-bold,700);
	line-height:1.35;
	letter-spacing:.12em;
	text-transform:uppercase;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-copy h3{
	margin:0;
	padding:0;
	color:var(--vivi-color-heading,#000);
	font-family:var(--vivi-font-heading,var(--vivi-font-body,inherit));
	font-size:var(--vivi-fs-body-lg,18px);
	font-weight:var(--vivi-fw-bold,700);
	line-height:1.32;
	letter-spacing:.035em;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-copy > p:not(.vivi-brand-map-inner-family-kicker){
	margin:10px 0 0;
	color:var(--vivi-color-text-muted,#5A5A5A);
	font-size:var(--vivi-fs-small,14px);
	font-weight:var(--vivi-fw-regular,400);
	line-height:1.72;
	letter-spacing:.02em;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-btn{
	width:100%;
	max-width:none;
	justify-content:center;
	margin-top:22px;
	min-height:42px;
	border-radius:var(--vivi-radius, 8px);
	font-size:var(--vivi-fs-small,14px);
	font-weight:var(--vivi-fw-bold,700);
	text-align:center;
	white-space:normal;
}
@media (max-width:767px){
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-section{
		gap:var(--vivi-space-sm,12px);
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-guide-img{
		border-radius:var(--vivi-radius, 8px);
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-copy h3{
		font-size:17px;
		line-height:1.34;
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-copy > p:not(.vivi-brand-map-inner-family-kicker){
		font-size:12px;
		line-height:1.65;
	}
	.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-btn{
		min-height:40px;
		margin-top:18px;
		font-size:13px;
	}
}



/* VIVI Brand Map v0.10.021：前台不顯示 Google Maps 狀態、錯誤與操作提示；保留 Google 標誌及版權資訊。 */
body.vivi-lite-brand-map-page .vivi-brand-map-status,
.vivi-brand-map-canvas .gm-err-container,
.vivi-brand-map-canvas .gm-err-content,
.vivi-brand-map-canvas .gm-err-icon,
.vivi-brand-map-canvas .gm-err-title,
.vivi-brand-map-canvas .gm-err-message,
.vivi-brand-map-canvas .gm-style-moc,
.vivi-brand-map-canvas .gm-style-pbc{
	display:none!important;
	visibility:hidden!important;
	opacity:0!important;
	pointer-events:none!important;
}

/* VIVI Brand Map v0.10.045：社團品牌篩選與行動版 Bottom Sheet 修正 --------
 * 桌機：地圖右側直式社團頭像分頁列。
 * 手機：搜尋欄右側單一社團按鈕，點擊後開啟 Bottom Sheet。
 */
body.vivi-lite-brand-map-page .vivi-brand-map-keyword-inline-row,
body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-inline-row{
	display:flex;
	align-items:center;
	gap:8px;
	width:100%;
	min-width:0;
}
body.vivi-lite-brand-map-page .vivi-brand-map-keyword-inline-row .vivi-brand-map-keyword-control,
body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-inline-row .vivi-brand-map-keyword-control{
	flex:1 1 auto;
	min-width:0;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-mobile-trigger,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-mobile-trigger{
	display:none;
}

body.vivi-lite-brand-map-page .vivi-brand-map-community-desktop,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-desktop{
	--vivi-community-avatar-size:50px;
	--vivi-community-item-gap:8px;
	--vivi-community-page-safe:5px;
	--vivi-community-control-gap:7px;
	--vivi-community-control-padding:7px;
	--vivi-community-arrow-height:25px;
	position:absolute;
	top:50%;
	right:18px;
	z-index:34;
	display:flex;
	flex-direction:column;
	align-items:center;
	gap:var(--vivi-community-control-gap);
	max-height:calc(100% - 24px);
	padding:var(--vivi-community-control-padding);
	border:1px solid rgba(17,24,39,.09);
	border-radius:var(--vivi-radius, 8px);
	background:rgba(255,255,255,.92);
	box-shadow:0 12px 30px rgba(17,24,39,.16);
	-webkit-backdrop-filter:blur(12px);
	backdrop-filter:blur(12px);
	transform:translateY(-50%);
	box-sizing:border-box;
	pointer-events:auto;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-desktop[hidden],
body.vivi-lite-brand-archive-page .vivi-brand-map-community-desktop[hidden]{
	display:none!important;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-desktop.is-compact,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-desktop.is-compact{
	--vivi-community-avatar-size:42px;
	--vivi-community-item-gap:6px;
	--vivi-community-page-safe:4px;
	--vivi-community-control-gap:5px;
	--vivi-community-control-padding:5px;
	--vivi-community-arrow-height:20px;
	right:12px;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-desktop.is-compact .vivi-brand-map-community-page-button,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-desktop.is-compact .vivi-brand-map-community-page-button{
	width:28px;
	min-width:28px;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-desktop.is-compact .vivi-brand-map-community-page-button::before,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-desktop.is-compact .vivi-brand-map-community-page-button::before{
	font-size:16px;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-viewport,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-viewport{
	--vivi-community-page-size:5;
	width:var(--vivi-community-avatar-size);
	/* 每頁高度包含上下各 5px 的安全間距，避免相鄰頁面從邊界露出。 */
	height:calc((var(--vivi-community-page-size) * var(--vivi-community-avatar-size)) + ((var(--vivi-community-page-size) - 1) * var(--vivi-community-item-gap)) + (2 * var(--vivi-community-page-safe)));
	max-height:100%;
	flex:0 0 auto;
	padding:0;
	box-sizing:border-box;
	overflow:hidden;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-track,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-track{
	display:flex;
	flex-direction:column;
	width:100%;
	height:100%;
	transition:transform .28s cubic-bezier(.22,.61,.36,1);
	will-change:transform;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-page,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-page{
	flex:0 0 100%;
	display:flex;
	flex-direction:column;
	align-items:center;
	gap:var(--vivi-community-item-gap);
	width:100%;
	height:100%;
	/* 安全間距必須屬於每一頁，確保 translateY(100%) 恰好切換完整一頁。 */
	padding:var(--vivi-community-page-safe) 0;
	box-sizing:border-box;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-choice,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-choice{
	appearance:none;
	-webkit-appearance:none;
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	width:var(--vivi-community-avatar-size,50px);
	height:var(--vivi-community-avatar-size,50px);
	min-width:var(--vivi-community-avatar-size,50px);
	min-height:var(--vivi-community-avatar-size,50px);
	margin:0;
	padding:3px;
	border:2px solid rgba(17,24,39,.12);
	border-radius:var(--vivi-radius, 8px);
	background:rgba(255,255,255,.98);
	box-shadow:0 5px 13px rgba(17,24,39,.10);
	color:var(--vivi-color-heading,#111827);
	cursor:pointer;
	box-sizing:border-box;
	transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-choice:hover,
body.vivi-lite-brand-map-page .vivi-brand-map-community-choice:focus-visible,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-choice:hover,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-choice:focus-visible{
	border-color:color-mix(in srgb,var(--vivi-color-primary,#996515) 58%,transparent);
	box-shadow:0 8px 18px rgba(17,24,39,.16);
	transform:translateY(-1px);
	outline:none;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-choice.is-active,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-choice.is-active{
	border-color:var(--vivi-color-primary,#996515);
	background:color-mix(in srgb,var(--vivi-color-primary,#996515) 8%,#fff);
	box-shadow:0 0 0 3px color-mix(in srgb,var(--vivi-color-primary,#996515) 20%,transparent),0 10px 22px rgba(17,24,39,.18);
	transform:scale(1.07);
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-avatar,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-avatar{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	height:100%;
	border-radius:var(--vivi-radius, 8px);
	overflow:hidden;
	background:var(--vivi-color-bg-soft,#f3f4f6);
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-avatar img,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-avatar img{
	display:block;
	width:100%;
	height:100%;
	max-width:none;
	object-fit:cover;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-avatar-fallback,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-avatar-fallback,
body.vivi-lite-brand-map-page .vivi-brand-map-community-all-icon,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-all-icon{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	height:100%;
	font-size:18px;
	font-weight:700;
	line-height:1;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-all-icon .vivi-bb-icon,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-all-icon .vivi-bb-icon{
	font-size:20px;
	line-height:1;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-active-mark,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-active-mark{
	position:absolute;
	right:-2px;
	bottom:-2px;
	display:none;
	align-items:center;
	justify-content:center;
	width:17px;
	height:17px;
	border:2px solid #fff;
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-primary,#996515);
	color:#fff;
	font-size:10px;
	font-weight:800;
	line-height:1;
	box-sizing:border-box;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-choice.is-active .vivi-brand-map-community-active-mark,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-choice.is-active .vivi-brand-map-community-active-mark{
	display:flex;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-choice.is-all .vivi-brand-map-community-active-mark,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-choice.is-all .vivi-brand-map-community-active-mark{
	display:none;
}
/* 網頁版 Active 僅保留右下角勾選，不套用外框、底色、陰影或縮放。 */
body.vivi-lite-brand-map-page .vivi-brand-map-community-desktop .vivi-brand-map-community-choice.is-active,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-desktop .vivi-brand-map-community-choice.is-active{
	border-color:rgba(17,24,39,.12);
	background:rgba(255,255,255,.98);
	box-shadow:0 5px 13px rgba(17,24,39,.10);
	transform:none;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-sr-only,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-sr-only{
	position:absolute!important;
	width:1px!important;
	height:1px!important;
	padding:0!important;
	margin:-1px!important;
	overflow:hidden!important;
	clip:rect(0,0,0,0)!important;
	white-space:nowrap!important;
	border:0!important;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-page-button,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-page-button{
	appearance:none;
	-webkit-appearance:none;
	display:flex;
	align-items:center;
	justify-content:center;
	width:32px;
	height:var(--vivi-community-arrow-height);
	min-width:32px;
	min-height:var(--vivi-community-arrow-height);
	margin:0;
	padding:0;
	border:0;
	border-radius:var(--vivi-radius, 8px);
	background:transparent;
	color:#111827;
	cursor:pointer;
	font-size:0;
	line-height:1;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-page-button::before,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-page-button::before{
	display:block;
	font-size:19px;
	font-weight:700;
	line-height:1;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-page-button.is-prev::before,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-page-button.is-prev::before{content:"⌃";}
body.vivi-lite-brand-map-page .vivi-brand-map-community-page-button.is-next::before,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-page-button.is-next::before{content:"⌄";}
body.vivi-lite-brand-map-page .vivi-brand-map-community-page-button:hover,
body.vivi-lite-brand-map-page .vivi-brand-map-community-page-button:focus-visible,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-page-button:hover,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-page-button:focus-visible{
	background:rgba(17,24,39,.08);
	outline:none;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-page-button:disabled,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-page-button:disabled{
	opacity:.28;
	cursor:default;
	background:transparent;
}

body.vivi-lite-brand-map-page .vivi-brand-map-community-notice,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-notice{
	position:absolute;
	left:50%;
	bottom:24px;
	z-index:48;
	max-width:min(86%,520px);
	padding:10px 16px;
	border:1px solid rgba(17,24,39,.10);
	border-radius:var(--vivi-radius, 8px);
	background:rgba(17,24,39,.90);
	box-shadow:0 12px 28px rgba(17,24,39,.22);
	color:#fff;
	font-size:13px;
	font-weight:600;
	line-height:1.45;
	text-align:center;
	opacity:0;
	pointer-events:none;
	transform:translate(-50%,12px);
	transition:opacity .2s ease,transform .2s ease;
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-notice.is-visible,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-notice.is-visible{
	opacity:1;
	transform:translate(-50%,0);
}

.vivi-brand-map-community-sheet{
	display:none;
}

@media (max-width:860px){
	body.vivi-lite-brand-map-page .vivi-brand-map-community-desktop,
	body.vivi-lite-brand-archive-page .vivi-brand-map-community-desktop{
		display:none!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-community-mobile-trigger,
	body.vivi-lite-brand-archive-page .vivi-brand-map-community-mobile-trigger{
		appearance:none;
		-webkit-appearance:none;
		flex:0 0 44px;
		display:flex;
		align-items:center;
		justify-content:center;
		width:44px;
		height:44px;
		min-width:44px;
		min-height:44px;
		margin:0;
		padding:3px;
		border:1px solid rgba(17,24,39,.10);
		border-radius:var(--vivi-radius, 8px);
		background:rgba(255,255,255,.96);
		box-shadow:0 10px 28px rgba(17,24,39,.16);
		color:#111827;
		cursor:pointer;
		box-sizing:border-box;
		-webkit-backdrop-filter:blur(12px);
		backdrop-filter:blur(12px);
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-community-mobile-trigger.is-active,
	body.vivi-lite-brand-archive-page .vivi-brand-map-community-mobile-trigger.is-active{
		border:2px solid var(--vivi-color-primary,#996515);
		box-shadow:0 0 0 3px color-mix(in srgb,var(--vivi-color-primary,#996515) 18%,transparent),0 10px 28px rgba(17,24,39,.16);
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-community-mobile-trigger:disabled,
	body.vivi-lite-brand-archive-page .vivi-brand-map-community-mobile-trigger:disabled{
		opacity:.45;
		cursor:default;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-community-mobile-trigger .vivi-bb-icon,
	body.vivi-lite-brand-archive-page .vivi-brand-map-community-mobile-trigger .vivi-bb-icon{
		font-size:20px;
		line-height:1;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-community-mobile-trigger img,
	body.vivi-lite-brand-archive-page .vivi-brand-map-community-mobile-trigger img{
		display:block;
		width:100%;
		height:100%;
		max-width:none;
		border-radius:var(--vivi-radius, 8px);
		object-fit:cover;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-keyword-overlay-row,
	body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-overlay-row,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-keyword-overlay-row,
	body.vivi-lite-brand-archive-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-keyword-overlay-row{
		width:min(100%,470px);
	}

	.vivi-brand-map-community-sheet{
		position:fixed;
		inset:0;
		z-index:10040;
		display:block;
		pointer-events:none;
	}
	.vivi-brand-map-community-sheet[hidden]{
		display:none!important;
	}
	.vivi-brand-map-community-sheet.is-open{
		pointer-events:auto;
	}
	.vivi-brand-map-community-sheet-backdrop{
		appearance:none;
		-webkit-appearance:none;
		position:absolute;
		inset:0;
		width:100%;
		height:100%;
		margin:0;
		padding:0;
		border:0;
		background:rgba(17,24,39,.46);
		opacity:0;
		transition:opacity .22s ease;
	}
	.vivi-brand-map-community-sheet.is-open .vivi-brand-map-community-sheet-backdrop{
		opacity:1;
	}
	.vivi-brand-map-community-sheet-panel{
		position:absolute;
		left:0;
		right:0;
		/* 固定停在全站手機快捷列上方，避免內容被快捷列遮住。 */
		bottom:var(--vivi-mobile-bottom-nav-height,calc(69px + env(safe-area-inset-bottom)));
		height:min(72dvh,560px);
		max-height:calc(100dvh - var(--vivi-header-height-mobile,66px) - var(--vivi-mobile-bottom-nav-height,calc(69px + env(safe-area-inset-bottom))) - 12px);
		padding:10px 18px 22px;
		border-radius:var(--vivi-radius, 8px) var(--vivi-radius, 8px) 0 0;
		background:var(--vivi-color-card,#fff);
		box-shadow:0 -16px 42px rgba(17,24,39,.22);
		overflow-y:auto;
		overscroll-behavior:contain;
		-webkit-overflow-scrolling:touch;
		transform:translateY(calc(104% + var(--vivi-mobile-bottom-nav-height,calc(69px + env(safe-area-inset-bottom)))));
		transition:transform .26s cubic-bezier(.22,.61,.36,1);
		box-sizing:border-box;
	}
	.vivi-brand-map-community-sheet.is-open .vivi-brand-map-community-sheet-panel{
		transform:translateY(0);
	}
	.vivi-brand-map-community-sheet-handle{
		width:42px;
		height:4px;
		margin:0 auto 10px;
		border-radius:var(--vivi-radius, 8px);
		background:rgba(17,24,39,.18);
	}
	.vivi-brand-map-community-sheet-header{
		display:flex;
		align-items:center;
		justify-content:space-between;
		gap:12px;
		margin-bottom:16px;
	}
	.vivi-brand-map-community-sheet-header h2{
		margin:0;
		color:var(--vivi-color-heading,#111827);
		font-family:var(--vivi-font-heading,inherit);
		font-size:18px;
		font-weight:700;
		line-height:1.35;
	}
	.vivi-brand-map-community-sheet-close{
		appearance:none;
		-webkit-appearance:none;
		display:flex;
		align-items:center;
		justify-content:center;
		width:36px;
		height:36px;
		min-width:36px;
		margin:0;
		padding:0;
		border:0;
		border-radius:var(--vivi-radius, 8px);
		background:var(--vivi-color-bg-soft,#f3f4f6);
		color:#111827;
		font-size:24px;
		font-weight:400;
		line-height:1;
		cursor:pointer;
	}
	/* 手機版社團選單：一排四個圖像，圖像水平與垂直置中，不顯示名稱文字。 */
	.vivi-brand-map-community-sheet-grid{
		display:grid;
		grid-template-columns:repeat(4,minmax(0,1fr));
		justify-items:center;
		align-items:center;
		gap:10px 6px;
		width:100%;
		padding:8px 0 12px;
	}
	.vivi-brand-map-community-sheet-grid .vivi-brand-map-community-choice{
		--vivi-community-avatar-size:50px;
		display:flex;
		flex-direction:column;
		align-items:center;
		justify-content:center;
		justify-self:center;
		gap:0;
		width:100%;
		height:66px;
		min-width:0;
		min-height:66px;
		padding:0;
		border:0;
		border-radius:var(--vivi-radius, 8px);
		background:transparent;
		box-shadow:none;
		transform:none;
		overflow:visible;
		transition:background-color .18s ease;
	}
	.vivi-brand-map-community-sheet-grid .vivi-brand-map-community-choice:hover,
	.vivi-brand-map-community-sheet-grid .vivi-brand-map-community-choice:focus-visible{
		border:0;
		background:rgba(17,24,39,.045);
		box-shadow:none;
		transform:none;
		outline:none;
	}
	.vivi-brand-map-community-sheet-grid .vivi-brand-map-community-choice.is-active{
		border:0;
		background:color-mix(in srgb,var(--vivi-color-primary,#996515) 8%,transparent);
		box-shadow:none;
		transform:none;
	}
	.vivi-brand-map-community-sheet-grid .vivi-brand-map-community-avatar{
		position:relative;
		width:var(--vivi-community-avatar-size);
		height:var(--vivi-community-avatar-size);
		min-width:var(--vivi-community-avatar-size);
		min-height:var(--vivi-community-avatar-size);
		border:1px solid rgba(17,24,39,.12);
		border-radius:var(--vivi-radius, 8px);
		background:#fff;
		box-shadow:0 4px 10px rgba(17,24,39,.10);
		box-sizing:border-box;
	}
	.vivi-brand-map-community-sheet-grid .vivi-brand-map-community-avatar img{
		border-radius:var(--vivi-radius, 8px);
	}
	.vivi-brand-map-community-sheet-grid .vivi-brand-map-community-choice.is-active .vivi-brand-map-community-avatar{
		border:2px solid var(--vivi-color-primary,#996515);
		box-shadow:0 5px 12px rgba(17,24,39,.12);
	}
	.vivi-brand-map-community-sheet-grid .vivi-brand-map-community-name{
		display:none!important;
	}
	.vivi-brand-map-community-sheet-grid .vivi-brand-map-community-active-mark{
		right:auto;
		bottom:auto;
		left:calc(50% + 14px);
		top:38px;
		width:16px;
		height:16px;
		font-size:9px;
	}
	body.vivi-brand-community-sheet-open{
		overflow:hidden;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-community-notice,
	body.vivi-lite-brand-archive-page .vivi-brand-map-community-notice{
		bottom:84px;
		font-size:12px;
	}
}
body.vivi-lite-brand-map-page .vivi-brand-map-community-mobile-trigger [hidden],
body.vivi-lite-brand-archive-page .vivi-brand-map-community-mobile-trigger [hidden]{
	display:none!important;
}


/* VIVI Brand Map v1.0.011：定位 Icon 按鈕比照票券頁面，並統一定位／搜尋動畫。 */
body.vivi-lite-brand-map-page .vivi-brand-map-geolocate-control{
	position:absolute;
	left:14px;
	bottom:56px;
	z-index:42;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	flex:0 0 44px;
	width:44px;
	height:44px;
	min-width:44px;
	min-height:44px;
	max-height:44px;
	margin:0;
	padding:0;
	border:1px solid var(--vivi-color-primary, #996515);
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-primary, #996515);
	box-shadow:none;
	color:#fff;
	cursor:pointer;
	box-sizing:border-box;
	transition:left .24s ease,bottom .24s ease,background-color var(--vivi-transition),border-color var(--vivi-transition),color var(--vivi-transition),transform var(--vivi-transition),opacity var(--vivi-transition);
	pointer-events:auto;
	touch-action:manipulation;
	-webkit-tap-highlight-color:transparent;
}
body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-expanded .vivi-brand-map-geolocate-control{
	left:calc(var(--vivi-brand-map-side-panel-width,35%) + 14px);
}
body.vivi-lite-brand-map-page .vivi-brand-map-geolocate-control:hover{
	border-color:color-mix(in srgb, var(--vivi-color-primary, #996515) 88%, #000);
	background:color-mix(in srgb, var(--vivi-color-primary, #996515) 88%, #000);
	color:#fff;
	box-shadow:none;
}
body.vivi-lite-brand-map-page .vivi-brand-map-geolocate-control:focus-visible{
	outline:2px solid color-mix(in srgb, var(--vivi-color-primary) 34%, transparent);
	outline-offset:2px;
}
body.vivi-lite-brand-map-page .vivi-brand-map-geolocate-control:active{
	transform:translateY(1px);
}
body.vivi-lite-brand-map-page .vivi-brand-map-geolocate-control .vivi-bb-icon,
body.vivi-lite-brand-map-page .vivi-brand-map-geolocate-control .vivi-bb-icon::before{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:22px;
	min-width:22px;
	height:22px;
	margin:0;
	font-size:22px;
	line-height:1;
}
body.vivi-lite-brand-map-page .vivi-brand-map-geolocate-control.is-loading{
	cursor:progress;
}
body.vivi-lite-brand-map-page .vivi-brand-map-geolocate-control.is-loading .vivi-bb-icon{
	animation:vivi-location-icon-spin .85s linear infinite;
}
/* 定位成功不顯示 Active 顏色，保留狀態僅供語意與程式判斷。 */
body.vivi-lite-brand-map-page .vivi-brand-map-geolocate-control.is-error{
	border-color:var(--vivi-color-primary, #996515);
	background:var(--vivi-color-primary, #996515);
	color:#fff;
}
body.vivi-lite-brand-map-page .vivi-brand-map-geolocate-control:disabled,
body.vivi-lite-brand-map-page .vivi-brand-map-geolocate-control.is-unsupported{
	opacity:.52;
	cursor:not-allowed;
}
body.vivi-lite-brand-map-page .vivi-brand-map-geolocate-status{
	position:absolute!important;
	width:1px!important;
	height:1px!important;
	padding:0!important;
	margin:-1px!important;
	overflow:hidden!important;
	clip:rect(0,0,0,0)!important;
	white-space:nowrap!important;
	border:0!important;
}
@media (max-width:860px){
	body.vivi-lite-brand-map-page .vivi-brand-map-geolocate-control,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-geolocate-control{
		left:12px;
		bottom:56px;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-expanded .vivi-brand-map-geolocate-control{
		left:12px;
		bottom:calc(var(--vivi-brand-map-mobile-panel-height,min(52dvh,430px)) + 14px);
	}
	/* 手機版開啟品牌內層資訊時，避免定位按鈕浮在內層區塊上方。 */
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel.is-profile-detail-open ~ .vivi-brand-map-geolocate-control{
		display:none;
	}
}

/* VIVI Brand Map v1.0.010：手機版 Loop List 純覆蓋地圖。
 * 地圖畫布固定填滿容器，Bottom Sheet 只在上層滑入／滑出；
 * 列表開關不再參與地圖高度與版面計算。桌機版設定不變。
 */
@media (max-width:860px){
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap{
		position:relative!important;
		display:block!important;
		height:100%!important;
		min-height:0!important;
		overflow:hidden!important;
		isolation:isolate;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-layout-map-only .vivi-brand-map-canvas,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap .vivi-brand-map-canvas{
		position:absolute!important;
		inset:0!important;
		z-index:0!important;
		width:100%!important;
		height:100%!important;
		min-height:100%!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel{
		position:absolute!important;
		top:auto!important;
		left:0!important;
		right:0!important;
		bottom:0!important;
		z-index:40!important;
		margin:0!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-keyword-overlay{
		z-index:35!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-toggle{
		z-index:82!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-geolocate-control{
		z-index:42!important;
	}
}


/* VIVI Brand Map v1.0.011：追蹤圖示只反映實際狀態，不再因 hover／觸控殘留顯示下一步操作圖示。 */


/* VIVI Brand Map v1.0.012：內層追蹤 Icon 只依實際狀態顯示，並覆蓋任何觸控／focus 殘留。 */
.vivi-brand-map-profile-detail-content .vivi-brand-map-profile-follow-toggle.is-not-following .vivi-bb-icon::before,
.vivi-brand-map-profile-detail-content .vivi-brand-map-profile-follow-toggle.is-not-following:hover .vivi-bb-icon::before,
.vivi-brand-map-profile-detail-content .vivi-brand-map-profile-follow-toggle.is-not-following:focus-visible .vivi-bb-icon::before{
	content:""!important;
}
.vivi-brand-map-profile-detail-content .vivi-brand-map-profile-follow-toggle.is-following .vivi-bb-icon::before,
.vivi-brand-map-profile-detail-content .vivi-brand-map-profile-follow-toggle.is-following:hover .vivi-bb-icon::before,
.vivi-brand-map-profile-detail-content .vivi-brand-map-profile-follow-toggle.is-following:focus-visible .vivi-bb-icon::before{
	content:""!important;
}

/* VIVI Brand Map v1.0.079：Marker 點擊先顯示輕量快速預覽，確認後才開啟完整品牌內層頁。 */
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview{
	position:absolute;
	left:calc(var(--vivi-brand-map-side-panel-width,35%) + 24px);
	right:24px;
	bottom:24px;
	z-index:84;
	width:min(420px,calc(100% - var(--vivi-brand-map-side-panel-width,35%) - 72px));
	margin:0 auto;
	border:1px solid rgba(17,24,39,.12);
	border-radius:var(--vivi-radius, 8px);
	background:rgba(255,255,255,.98);
	box-shadow:0 18px 48px rgba(17,24,39,.24);
	-webkit-backdrop-filter:blur(16px);
	backdrop-filter:blur(16px);
	opacity:0;
	transform:translateY(12px) scale(.985);
	transition:opacity .18s ease,transform .18s ease;
	pointer-events:none;
	overflow:hidden;
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview[hidden]{
	display:none!important;
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview.is-open{
	opacity:1;
	transform:translateY(0) scale(1);
	pointer-events:auto;
}
body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-marker-preview{
	left:24px;
	width:min(420px,calc(100% - 48px));
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-main{
	display:grid;
	grid-template-columns:64px minmax(0,1fr) auto;
	align-items:center;
	gap:14px;
	width:100%;
	min-height:104px;
	padding:16px 52px 16px 16px;
	border:0;
	background:transparent;
	color:inherit;
	text-align:left;
	cursor:pointer;
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-main:hover,
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-main:focus-visible{
	background:rgba(185,132,84,.07);
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-main:focus-visible{
	outline:2px solid var(--vivi-color-orange,#b98454);
	outline-offset:-3px;
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-avatar{
	display:block;
	width:64px;
	height:64px;
	border-radius:var(--vivi-radius, 8px);
	overflow:hidden;
	background:var(--vivi-color-bg-soft,#f3f4f6);
	box-shadow:inset 0 0 0 1px rgba(17,24,39,.06);
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-avatar img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-content{
	display:flex;
	min-width:0;
	flex-direction:column;
	align-items:flex-start;
	gap:5px;
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-title{
	display:block;
	max-width:100%;
	overflow:hidden;
	color:var(--vivi-color-heading,#111827);
	font-size:17px;
	font-weight:700;
	line-height:1.35;
	text-overflow:ellipsis;
	white-space:nowrap;
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-meta{
	display:block;
	max-width:100%;
	overflow:hidden;
	color:var(--vivi-color-text-muted,#6b7280);
	font-size:13px;
	font-weight:500;
	line-height:1.4;
	text-overflow:ellipsis;
	white-space:nowrap;
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-action{
	display:inline-flex;
	align-items:center;
	gap:4px;
	color:var(--vivi-color-orange,#b98454);
	font-size:13px;
	font-weight:700;
	white-space:nowrap;
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-action .vivi-bb-icon,
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-action .vivi-bb-icon::before{
	font-size:15px;
	line-height:1;
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-close{
	position:absolute;
	top:10px;
	right:10px;
	z-index:2;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:32px;
	height:32px;
	padding:0;
	border:0;
	border-radius:var(--vivi-radius, 8px);
	background:rgba(17,24,39,.06);
	color:var(--vivi-color-heading,#111827);
	font-size:22px;
	line-height:1;
	cursor:pointer;
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-close:hover,
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-close:focus-visible{
	background:rgba(17,24,39,.12);
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-close:focus-visible{
	outline:2px solid var(--vivi-color-orange,#b98454);
	outline-offset:2px;
}
@media (max-width:860px){
	body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-marker-preview{
		left:12px;
		right:12px;
		bottom:108px;
		width:auto;
		max-width:none;
		margin:0;
		border-radius:var(--vivi-radius, 8px);
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-expanded .vivi-brand-map-marker-preview{
		bottom:calc(var(--vivi-brand-map-mobile-panel-height,min(52dvh,430px)) + 62px);
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-main{
		grid-template-columns:56px minmax(0,1fr);
		gap:12px;
		min-height:92px;
		padding:14px 48px 14px 14px;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-avatar{
		width:56px;
		height:56px;
		border-radius:var(--vivi-radius, 8px);
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-title{
		font-size:15px;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-meta{
		font-size:12px;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-action{
		grid-column:2;
		justify-self:start;
		margin-top:-3px;
		font-size:12px;
	}
}


/* VIVI Brand Map v1.0.080：Google Maps App 式 Marker 與三段式 Bottom Sheet。 */
body.vivi-lite-brand-map-page .vivi-brand-map-sheet-handle{
	display:none;
}
@media (max-width:860px){
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap{
		--vivi-brand-map-mobile-sheet-visible-height:72px;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel{
		display:flex!important;
		flex-direction:column!important;
		height:72px!important;
		min-height:72px!important;
		max-height:calc(100% - 8px)!important;
		transform:none!important;
		overflow:hidden!important;
		transition:height .28s cubic-bezier(.2,.8,.2,1),box-shadow .22s ease!important;
		will-change:height;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel.is-collapsed,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.is-initial-mobile-collapsed .vivi-brand-map-side-panel:not(.is-profile-detail-open),
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap:not(.has-side-panel-expanded) .vivi-brand-map-side-panel:not(.is-profile-detail-open){
		transform:none!important;
		box-shadow:0 -10px 28px rgba(17,24,39,.14)!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel.is-dragging{
		transition:none!important;
		user-select:none;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-sheet-handle{
		position:relative;
		z-index:6;
		display:flex;
		flex:0 0 72px;
		align-items:center;
		gap:12px;
		width:100%;
		height:72px;
		min-height:72px;
		padding:18px 18px 10px;
		border:0;
		background:rgba(255,255,255,.98);
		color:var(--vivi-color-heading,#111827);
		text-align:left;
		cursor:grab;
		touch-action:none;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel.is-dragging .vivi-brand-map-sheet-handle{
		cursor:grabbing;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-sheet-grabber{
		position:absolute;
		top:8px;
		left:50%;
		width:38px;
		height:4px;
		border-radius:var(--vivi-radius, 8px);
		background:#c4c7c5;
		transform:translateX(-50%);
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-sheet-handle-copy{
		display:flex;
		min-width:0;
		flex-direction:column;
		gap:2px;
		padding-top:2px;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-sheet-handle-copy strong{
		overflow:hidden;
		font-size:15px;
		font-weight:700;
		line-height:1.25;
		text-overflow:ellipsis;
		white-space:nowrap;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-sheet-handle-copy span{
		color:var(--vivi-color-text-muted,#6b7280);
		font-size:11px;
		font-weight:500;
		line-height:1.25;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-inner{
		flex:1 1 auto!important;
		height:auto!important;
		min-height:0!important;
		overflow:auto!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel[data-vivi-brand-map-sheet-state="peek"] .vivi-brand-map-side-panel-inner{
		visibility:hidden;
		pointer-events:none;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel[data-vivi-brand-map-sheet-state="half"] .vivi-brand-map-side-panel-inner,
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel[data-vivi-brand-map-sheet-state="full"] .vivi-brand-map-side-panel-inner{
		visibility:visible;
		pointer-events:auto;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-toggle{
		display:none!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-geolocate-control,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-geolocate-control,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-expanded .vivi-brand-map-geolocate-control{
		left:12px!important;
		bottom:calc(var(--vivi-brand-map-mobile-sheet-visible-height,72px) + 12px)!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-marker-preview,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-expanded .vivi-brand-map-marker-preview{
		position:relative!important;
		inset:auto!important;
		order:2;
		width:100%!important;
		max-width:none!important;
		margin:0!important;
		border:0!important;
		border-radius:0 !important;
		background:#fff!important;
		box-shadow:none!important;
		transform:none!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel.has-marker-preview{
		background:#fff!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel.has-marker-preview .vivi-brand-map-sheet-handle{
		flex-basis:34px;
		height:34px;
		min-height:34px;
		padding:0;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel.has-marker-preview .vivi-brand-map-sheet-handle-copy{
		display:none;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel.has-marker-preview .vivi-brand-map-side-panel-inner{
		display:none!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel.has-marker-preview .vivi-brand-map-marker-preview-main{
		min-height:112px;
		padding:8px 48px 16px 16px;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel.has-marker-preview .vivi-brand-map-marker-preview-close{
		top:4px;
		right:10px;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel.is-profile-detail-open .vivi-brand-map-sheet-handle{
		flex-basis:34px;
		height:34px;
		min-height:34px;
		padding:0;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel.is-profile-detail-open .vivi-brand-map-sheet-handle-copy{
		display:none;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel.is-profile-detail-open .vivi-brand-map-side-panel-inner{
		visibility:visible!important;
		pointer-events:auto!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-side-panel-top-button{
		bottom:18px!important;
	}
}
@media (prefers-reduced-motion:reduce){
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel{
		transition:none!important;
	}
}


/* VIVI Brand Map v0.10.093：首頁手機版搜尋與右側社團篩選控制。
 * 舊版單一品牌分類入口按鈕已移除；v0.10.100 品牌類別維持單選，選取項固定在「全部」後方，並修正更多按鈕閃動。
 */
@media (max-width:860px){
	body.vivi-lite-brand-map-page .vivi-brand-map-keyword-overlay-row,
	body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-overlay-row,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-keyword-overlay-row,
	body.vivi-lite-brand-archive-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-keyword-overlay-row{
		align-self:stretch!important;
		width:100%!important;
		max-width:none!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-keyword-inline-row,
	body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-inline-row,
	body.vivi-lite-brand-map-page .vivi-brand-map-keyword-inline-row .vivi-brand-map-keyword-control,
	body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-inline-row .vivi-brand-map-keyword-control{
		width:100%!important;
		max-width:none!important;
	}
	
	
	body.vivi-lite-brand-map-page .vivi-brand-map-mobile-filter-controls,
	body.vivi-lite-brand-archive-page .vivi-brand-map-mobile-filter-controls{
		z-index:39!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-mobile-filter-controls button,
	body.vivi-lite-brand-archive-page .vivi-brand-map-mobile-filter-controls button{
		font-size:20px!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-mobile-filter-controls .vivi-bb-icon,
	body.vivi-lite-brand-archive-page .vivi-brand-map-mobile-filter-controls .vivi-bb-icon,
	body.vivi-lite-brand-map-page .vivi-brand-map-mobile-filter-controls .vivi-bb-icon::before,
	body.vivi-lite-brand-archive-page .vivi-brand-map-mobile-filter-controls .vivi-bb-icon::before{
		width:1em;
		height:1em;
		font-size:20px!important;
		line-height:1;
	}
}


/* VIVI Brand Map v0.10.091：社團品牌 Loop List 規格。
 * 卡片本體維持全站共用樣式，只以社團徽章識別，避免額外左側色條與雙重金色邊框。
 */
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-badges,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-badges{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:5px;
	min-width:0;
	margin-top:auto;
	padding-top:8px;
}
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-badge,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-badge{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:0;
	min-height:20px;
	max-width:92px;
	padding:3px 7px;
	overflow:hidden;
	border:1px solid var(--vivi-color-border,rgba(17,24,39,.10));
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-card-warm,var(--vivi-color-bg-soft,#f7f3ee));
	color:var(--vivi-color-text,#374151);
	font-size:var(--vivi-fs-xs,12px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:1;
	text-overflow:ellipsis;
	white-space:nowrap;
}
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-badge.has-image,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-badge.has-image{
	width:24px;
	min-width:24px;
	height:24px;
	min-height:24px;
	padding:0;
	border:0;
	border-radius:var(--vivi-radius, 8px);
	background:transparent;
	box-shadow:none;
	overflow:hidden;
}
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-badge img,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-badge img{
	display:block;
	width:100%;
	height:100%;
	border-radius:inherit;
	object-fit:contain;
}
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-item.has-brand-map-loop-badges .vivi-brand-map-loop-actions,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-item.has-brand-map-loop-badges .vivi-brand-map-loop-actions{
	margin-top:8px!important;
}
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-item:not(.has-brand-map-loop-badges) .vivi-brand-map-loop-actions,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-item:not(.has-brand-map-loop-badges) .vivi-brand-map-loop-actions{
	margin-top:auto!important;
}
@media (max-width:860px){
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-badges,
	body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-badges{
		width:100%;
		justify-content:flex-start;
	}
}

/* VIVI Brand Map v0.10.092：快速預覽卡片移除品牌名稱上方的「社團品牌」文字標示；社團 Marker 與排序規則維持不變。 */

/* VIVI Brand Map v0.10.094：手機版社團按鈕併入關鍵字搜尋列。
 * 全站關鍵字提示清單只對齊搜尋框本體，不延伸至社團按鈕下方。
 */
@media (max-width:860px){
	body.vivi-lite-brand-map-page .vivi-brand-map-keyword-overlay-row,
	body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-overlay-row,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-keyword-overlay-row,
	body.vivi-lite-brand-archive-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-keyword-overlay-row{
		--vivi-brand-map-mobile-community-size:44px;
		--vivi-brand-map-mobile-community-gap:8px;
		align-self:stretch!important;
		width:100%!important;
		max-width:none!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-keyword-inline-row,
	body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-inline-row{
		display:grid!important;
		grid-template-columns:minmax(0,1fr) var(--vivi-brand-map-mobile-community-size,44px);
		align-items:center;
		column-gap:var(--vivi-brand-map-mobile-community-gap,8px)!important;
		width:100%!important;
		max-width:none!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-keyword-inline-row .vivi-brand-map-keyword-control,
	body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-inline-row .vivi-brand-map-keyword-control{
		grid-column:1;
		width:100%!important;
		min-width:0;
		max-width:none!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-keyword-inline-row .vivi-brand-map-community-mobile-trigger,
	body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-inline-row .vivi-brand-map-community-mobile-trigger{
		grid-column:2;
		position:relative!important;
		top:auto!important;
		right:auto!important;
		bottom:auto!important;
		left:auto!important;
		transform:none!important;
		display:flex!important;
		width:var(--vivi-brand-map-mobile-community-size,44px)!important;
		height:var(--vivi-brand-map-mobile-community-size,44px)!important;
		min-width:var(--vivi-brand-map-mobile-community-size,44px)!important;
		min-height:var(--vivi-brand-map-mobile-community-size,44px)!important;
		margin:0!important;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-mobile-zoom-controls,
	body.vivi-lite-brand-archive-page .vivi-brand-map-mobile-zoom-controls{
		display:none!important;
	}
}

/* VIVI Brand Map v0.10.095：brand_category 改為非階層式品牌類別。 */
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-tags,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-tags{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:5px;
	min-width:0;
	max-height:48px;
	margin-top:7px;
	overflow:hidden;
}
body.vivi-lite-brand-map-page .vivi-brand-tag-chip,
body.vivi-lite-brand-archive-page .vivi-brand-tag-chip{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:0;
	max-width:118px;
	min-height:22px;
	padding:3px 8px;
	overflow:hidden;
	border:1px solid rgba(17,24,39,.09);
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-bg-soft,#f3f4f6);
	color:var(--vivi-color-text,#374151);
	font-size:11px;
	font-weight:600;
	line-height:1.2;
	text-overflow:ellipsis;
	white-space:nowrap;
	box-sizing:border-box;
}
body.vivi-lite-brand-map-page .vivi-brand-tag-chip.is-more,
body.vivi-lite-brand-archive-page .vivi-brand-tag-chip.is-more{
	flex:0 0 auto;
	max-width:none;
	background:#fff;
	color:var(--vivi-color-text-muted,#6b7280);
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-tags-wrap{
	display:block;
	width:100%;
	min-width:0;
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-tags-wrap[hidden]{
	display:none!important;
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-tags{
	display:flex;
	flex-wrap:nowrap;
	align-items:center;
	gap:5px;
	width:100%;
	min-width:0;
	overflow:hidden;
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-tags .vivi-brand-tag-chip{
	flex:0 1 auto;
	max-width:112px;
	min-height:20px;
	padding:2px 7px;
	font-size:10px;
}
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-meta[hidden]{
	display:none!important;
}
@media (max-width:860px){
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-tags,
	body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-tags{
		max-height:44px;
		gap:4px;
	}
	body.vivi-lite-brand-map-page .vivi-brand-tag-chip,
	body.vivi-lite-brand-archive-page .vivi-brand-tag-chip{
		max-width:104px;
		min-height:20px;
		padding:2px 7px;
		font-size:10px;
	}
}


/* VIVI Brand Map v0.10.100：沿用原 VIVI 合作夥伴分類膠囊樣式；標籤單選，並穩定更多按鈕排版。 */
body.vivi-lite-brand-map-page .vivi-brand-map-tag-filter,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-filter{
	position:relative;
	width:100%;
	min-width:0;
	margin-top:8px;
	pointer-events:auto;
	box-sizing:border-box;
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-tabs-row,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-tabs-row{
	--vivi-brand-map-tag-gap:8px;
	display:flex;
	align-items:center;
	justify-content:flex-start;
	gap:var(--vivi-brand-map-tag-gap);
	width:100%;
	min-width:0;
	min-height:32px;
	margin:0;
	padding:0 2px 2px;
	border:0;
	border-radius:0;
	background:transparent;
	box-shadow:none;
	box-sizing:border-box;
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-tabs-main,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-tabs-main{
	display:flex;
	flex:0 1 auto;
	align-items:center;
	gap:var(--vivi-brand-map-tag-gap,8px);
	width:auto;
	max-width:100%;
	min-width:0;
	overflow:hidden;
	white-space:nowrap;
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-choice,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-choice,
body.vivi-lite-brand-map-page .vivi-brand-map-tag-more,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-more{
	appearance:none;
	-webkit-appearance:none;
	position:relative;
	display:inline-flex;
	flex:0 0 auto;
	align-items:center;
	justify-content:center;
	gap:6px;
	min-width:max-content;
	min-height:32px;
	height:32px;
	padding:0 13px;
	border:1px solid var(--vivi-color-border,rgba(17,24,39,.10));
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-card,#fff);
	box-shadow:0 4px 12px rgba(17,24,39,.06);
	color:var(--vivi-color-text,#374151);
	font:inherit;
	font-size:var(--vivi-fs-small,13px);
	font-weight:var(--vivi-fw-bold,600);
	line-height:1;
	white-space:nowrap;
	cursor:pointer;
	box-sizing:border-box;
	transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease;
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-choice::after,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-choice::after{
	display:none!important;
	content:none!important;
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-choice:hover,
body.vivi-lite-brand-map-page .vivi-brand-map-tag-choice:focus-visible,
body.vivi-lite-brand-map-page .vivi-brand-map-tag-more:hover,
body.vivi-lite-brand-map-page .vivi-brand-map-tag-more:focus-visible,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-choice:hover,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-choice:focus-visible,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-more:hover,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-more:focus-visible{
	border-color:color-mix(in srgb,var(--vivi-color-primary,#111827) 30%,var(--vivi-color-border,rgba(17,24,39,.10)));
	background:var(--vivi-color-bg-soft,#f7f3ee);
	color:var(--vivi-color-heading,#111827);
	outline:0;
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-choice.is-active,
body.vivi-lite-brand-map-page .vivi-brand-map-tag-more.is-active,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-choice.is-active,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-more.is-active{
	border-color:var(--vivi-color-primary,#111827);
	background:var(--vivi-color-primary,#111827);
	box-shadow:0 8px 20px rgba(17,24,39,.16);
	color:#fff;
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-choice[hidden],
body.vivi-lite-brand-map-page .vivi-brand-map-tag-more[hidden],
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-choice[hidden],
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-more[hidden]{
	display:none!important;
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-choice.is-truncated,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-choice.is-truncated{
	min-width:0;
	overflow:hidden;
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-choice.is-truncated .vivi-brand-map-tag-choice-name,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-choice.is-truncated .vivi-brand-map-tag-choice-name{
	display:block;
	min-width:0;
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-more,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-more{
	flex-basis:36px;
	margin:0;
	width:36px;
	min-width:36px;
	padding:0 10px 5px;
	font-size:21px;
	font-weight:700;
	letter-spacing:1px;
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-popover,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-popover{
	position:absolute;
	top:calc(100% + 8px);
	right:0;
	z-index:48;
	width:min(430px,calc(100vw - 36px));
	max-height:min(58vh,430px);
	padding:12px;
	overflow:hidden;
	border:1px solid rgba(17,24,39,.10);
	border-radius:var(--vivi-radius, 8px);
	background:rgba(255,255,255,.98);
	box-shadow:0 18px 48px rgba(17,24,39,.22);
	-webkit-backdrop-filter:blur(16px);
	backdrop-filter:blur(16px);
	box-sizing:border-box;
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-popover[hidden],
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-popover[hidden]{
	display:none!important;
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-popover-head,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-popover-head{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	margin-bottom:10px;
	padding:0 2px 10px;
	border-bottom:1px solid rgba(17,24,39,.08);
	color:var(--vivi-color-heading,#111827);
	font-size:14px;
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-popover-close,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-popover-close{
	appearance:none;
	-webkit-appearance:none;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:30px;
	height:30px;
	padding:0;
	border:0;
	border-radius:var(--vivi-radius, 8px);
	background:rgba(17,24,39,.06);
	color:#111827;
	font-size:20px;
	line-height:1;
	cursor:pointer;
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-choice-grid,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-choice-grid{
	display:flex;
	flex-wrap:wrap;
	align-content:flex-start;
	gap:8px;
	max-height:340px;
	overflow:auto;
	overscroll-behavior:contain;
	padding:2px;
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-choice-grid .vivi-brand-map-tag-choice,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-choice-grid .vivi-brand-map-tag-choice{
	min-height:32px;
	height:32px;
	padding:0 13px;
	border:1px solid var(--vivi-color-border,rgba(17,24,39,.10));
	border-radius:var(--vivi-radius, 8px);
	background:var(--vivi-color-card,#fff);
	box-shadow:0 4px 12px rgba(17,24,39,.06);
	color:var(--vivi-color-text,#374151);
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-choice-grid .vivi-brand-map-tag-choice:hover,
body.vivi-lite-brand-map-page .vivi-brand-map-tag-choice-grid .vivi-brand-map-tag-choice:focus-visible,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-choice-grid .vivi-brand-map-tag-choice:hover,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-choice-grid .vivi-brand-map-tag-choice:focus-visible{
	border-color:color-mix(in srgb,var(--vivi-color-primary,#111827) 30%,var(--vivi-color-border,rgba(17,24,39,.10)));
	background:var(--vivi-color-bg-soft,#f7f3ee);
	color:var(--vivi-color-heading,#111827);
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-choice-grid .vivi-brand-map-tag-choice.is-active,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-choice-grid .vivi-brand-map-tag-choice.is-active{
	border-color:var(--vivi-color-primary,#111827);
	background:var(--vivi-color-primary,#111827);
	box-shadow:0 8px 20px rgba(17,24,39,.16);
	color:#fff;
}
body.vivi-lite-brand-map-page .vivi-brand-map-tag-choice-count,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-choice-count{
	display:none!important;
}
@media (max-width:860px){
	body.vivi-lite-brand-map-page .vivi-brand-map-tag-filter,
	body.vivi-lite-brand-archive-page .vivi-brand-map-tag-filter{
		width:calc(100% - var(--vivi-brand-map-mobile-community-size,44px) - var(--vivi-brand-map-mobile-community-gap,8px));
		max-width:calc(100% - var(--vivi-brand-map-mobile-community-size,44px) - var(--vivi-brand-map-mobile-community-gap,8px));
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-tag-tabs-row,
	body.vivi-lite-brand-archive-page .vivi-brand-map-tag-tabs-row{
		--vivi-brand-map-tag-gap:6px;
		min-height:32px;
		padding:0 1px 2px;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-tag-choice,
	body.vivi-lite-brand-archive-page .vivi-brand-map-tag-choice{
		min-height:32px;
		height:32px;
		padding:0 10px;
		font-size:12px;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-tag-more,
	body.vivi-lite-brand-archive-page .vivi-brand-map-tag-more{
		flex-basis:32px;
		width:32px;
		min-width:32px;
		height:32px;
		min-height:32px;
		padding-right:7px;
		padding-left:7px;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-tag-popover,
	body.vivi-lite-brand-archive-page .vivi-brand-map-tag-popover{
		display:none!important;
	}
	.vivi-brand-map-tag-sheet-panel{
		max-height:min(72vh,590px);
		overflow:hidden;
	}
	.vivi-brand-map-tag-sheet-grid{
		display:flex;
		flex-wrap:wrap;
		align-content:flex-start;
		gap:8px;
		max-height:calc(min(72vh,590px) - 98px);
		padding:12px 16px calc(22px + env(safe-area-inset-bottom,0px));
		overflow-y:auto;
		overscroll-behavior:contain;
	}
	.vivi-brand-map-tag-sheet-grid .vivi-brand-map-tag-choice{
		min-height:32px;
		height:32px;
		padding:0 13px;
		border:1px solid var(--vivi-color-border,rgba(17,24,39,.10));
		border-radius:var(--vivi-radius, 8px);
		background:var(--vivi-color-card,#fff);
		box-shadow:0 4px 12px rgba(17,24,39,.06);
		color:var(--vivi-color-text,#374151);
		font-size:12px;
	}
	.vivi-brand-map-tag-sheet-grid .vivi-brand-map-tag-choice.is-active{
		border-color:var(--vivi-color-primary,#111827);
		background:var(--vivi-color-primary,#111827);
		box-shadow:0 8px 20px rgba(17,24,39,.16);
		color:#fff;
	}
	body.vivi-brand-tag-sheet-open{
		overflow:hidden;
		touch-action:none;
	}
}
@media (min-width:861px){
	.vivi-brand-map-tag-sheet{
		display:none!important;
	}
}

/* =========================================================
   0.10.151 — 生活探索頁面矩形元件統一使用 8px 圓角。
   保留圓形社團頭像、狀態標記、輪播圓點、拖曳把手與地圖原生控制圖示。
========================================================= */
body.vivi-lite-brand-map-page,
body.vivi-lite-brand-archive-page{
	--vivi-radius-xs: var(--vivi-radius, 8px);
	--vivi-radius-sm: var(--vivi-radius, 8px);
	--vivi-radius-md: var(--vivi-radius, 8px);
	--vivi-radius-lg: var(--vivi-radius, 8px);
	--vivi-radius-xl: var(--vivi-radius, 8px);
	--vivi-btn-radius: var(--vivi-radius, 8px);
	--vivi-page-tab-radius: var(--vivi-radius, 8px);
	--vivi-more-menu-radius: var(--vivi-radius, 8px);
	--vivi-popup-standard-radius: var(--vivi-radius, 8px);
	--vivi-profile-person-card-radius: var(--vivi-radius, 8px);
	--vivi-profile-person-avatar-radius: var(--vivi-radius, 8px);
}

body.vivi-lite-brand-map-page .vivi-brand-filter-panel,
body.vivi-lite-brand-archive-page .vivi-brand-filter-panel,
body.vivi-lite-brand-map-page .vivi-brand-filter-form .vivi-input,
body.vivi-lite-brand-map-page .vivi-brand-filter-form .vivi-select,
body.vivi-lite-brand-archive-page .vivi-brand-filter-form .vivi-input,
body.vivi-lite-brand-archive-page .vivi-brand-filter-form .vivi-select,
body.vivi-lite-brand-map-page .vivi-brand-category-tag,
body.vivi-lite-brand-archive-page .vivi-brand-category-tag,
body.vivi-lite-brand-map-page .vivi-brand-category-popover,
body.vivi-lite-brand-archive-page .vivi-brand-category-popover,
body.vivi-lite-brand-map-page .vivi-brand-category-popover-head button,
body.vivi-lite-brand-archive-page .vivi-brand-category-popover-head button,
body.vivi-lite-brand-map-page .vivi-brand-map-status,
body.vivi-lite-brand-archive-page .vivi-brand-map-status,
body.vivi-lite-brand-map-page .vivi-brand-map-keyword-overlay-row .vivi-input,
body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-overlay-row .vivi-input,
body.vivi-lite-brand-map-page .vivi-brand-map-keyword-submit,
body.vivi-lite-brand-archive-page .vivi-brand-map-keyword-submit,
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-item,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-item,
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-avatar,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-avatar,
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-name-button:focus-visible,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-name-button:focus-visible,
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-loop-action-icon,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-loop-action-icon,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-close,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-close,
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-empty,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-empty,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-placeholder,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-error,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-placeholder,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-error,
body.vivi-lite-brand-map-page .vivi-brand-map-mobile-zoom-controls button,
body.vivi-lite-brand-archive-page .vivi-brand-map-mobile-zoom-controls button,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-hero,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-section,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-hero,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-section,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-avatar,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-avatar,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content a.vivi-brand-map-inner-contact-item:focus-visible,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content a.vivi-brand-map-inner-contact-item:focus-visible,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-action,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-action,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-viewport,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-group-card,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-group-avatar,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-arrow,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-viewport,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-group-card,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-group-avatar,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-groups-arrow,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-countdown-time span,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-94-countdown-note,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-94-countdown-cta,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-countdown-time span,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-94-countdown-note,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-94-countdown .vivi-94-countdown-cta,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-viewport,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-empty,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-card,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-placeholder span,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-arrow,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-viewport,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-empty,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-card,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-placeholder span,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activities-arrow,
body.vivi-lite-brand-map-page .vivi-brand-map-marker-name-label,
body.vivi-lite-brand-archive-page .vivi-brand-map-marker-name-label,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-viewport,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-card,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-placeholder span,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-discount,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-soldout,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-arrow,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-viewport,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-card,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-placeholder span,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-discount,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-ticket-soldout,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-tickets-arrow,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-actions .vivi-activity-count:focus-visible,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-activity-actions .vivi-activity-count:focus-visible,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-panel,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-guide-img,
body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-btn,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-panel,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-guide-img,
body.vivi-lite-brand-archive-page .vivi-brand-map-profile-detail-content .vivi-brand-map-inner-family-btn,
body.vivi-lite-brand-map-page .vivi-brand-map-community-desktop,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-desktop,
body.vivi-lite-brand-map-page .vivi-brand-map-community-choice,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-choice,
body.vivi-lite-brand-map-page .vivi-brand-map-community-page-button,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-page-button,
body.vivi-lite-brand-map-page .vivi-brand-map-community-notice,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-notice,
body.vivi-lite-brand-map-page .vivi-brand-map-community-mobile-trigger,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-mobile-trigger,
body.vivi-lite-brand-map-page .vivi-brand-map-community-sheet-close,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-sheet-close,
body.vivi-lite-brand-map-page .vivi-brand-map-community-sheet-grid .vivi-brand-map-community-choice,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-sheet-grid .vivi-brand-map-community-choice,
body.vivi-lite-brand-map-page .vivi-brand-map-community-sheet-grid .vivi-brand-map-community-avatar,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-sheet-grid .vivi-brand-map-community-avatar,
body.vivi-lite-brand-map-page .vivi-brand-map-community-sheet-grid .vivi-brand-map-community-avatar img,
body.vivi-lite-brand-archive-page .vivi-brand-map-community-sheet-grid .vivi-brand-map-community-avatar img,
body.vivi-lite-brand-map-page .vivi-brand-map-geolocate-control,
body.vivi-lite-brand-archive-page .vivi-brand-map-geolocate-control,
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview,
body.vivi-lite-brand-archive-page .vivi-brand-map-marker-preview,
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-avatar,
body.vivi-lite-brand-archive-page .vivi-brand-map-marker-preview-avatar,
body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview-close,
body.vivi-lite-brand-archive-page .vivi-brand-map-marker-preview-close,
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-badge,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-badge,
body.vivi-lite-brand-map-page .vivi-brand-tag-chip,
body.vivi-lite-brand-archive-page .vivi-brand-tag-chip,
body.vivi-lite-brand-map-page .vivi-brand-map-tag-choice,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-choice,
body.vivi-lite-brand-map-page .vivi-brand-map-tag-more,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-more,
body.vivi-lite-brand-map-page .vivi-brand-map-tag-popover,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-popover,
body.vivi-lite-brand-map-page .vivi-brand-map-tag-popover-close,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-popover-close,
body.vivi-lite-brand-map-page .vivi-brand-map-tag-choice-grid .vivi-brand-map-tag-choice,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-choice-grid .vivi-brand-map-tag-choice,
body.vivi-lite-brand-map-page .vivi-brand-map-tag-sheet-grid .vivi-brand-map-tag-choice,
body.vivi-lite-brand-archive-page .vivi-brand-map-tag-sheet-grid .vivi-brand-map-tag-choice{
	border-radius:var(--vivi-radius, 8px) !important;
}

/* 桌機側欄的收合按鈕仍貼齊側欄，只將外側兩個圓角改為 8px。 */
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-toggle{
	border-radius:0 var(--vivi-radius, 8px) var(--vivi-radius, 8px) 0 !important;
}

/* 手機 Bottom Sheet 僅保留上方兩個圓角，避免底部與螢幕邊緣出現空隙。 */
@media (max-width:860px){
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel,
	body.vivi-lite-brand-map-page .vivi-brand-map-profile-detail-panel,
	body.vivi-lite-brand-map-page .vivi-brand-map-community-sheet-panel,
	body.vivi-lite-brand-map-page .vivi-brand-map-tag-sheet-panel,
	body.vivi-lite-brand-archive-page .vivi-brand-map-community-sheet-panel,
	body.vivi-lite-brand-archive-page .vivi-brand-map-tag-sheet-panel{
		border-radius:var(--vivi-radius, 8px) var(--vivi-radius, 8px) 0 0 !important;
	}

	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-toggle{
		border-radius:var(--vivi-radius, 8px) !important;
	}

	/* 手機快速預覽與側欄合併時維持貼齊，不額外產生圓角或縫隙。 */
	body.vivi-lite-brand-map-page .vivi-brand-map-marker-preview,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-collapsed .vivi-brand-map-marker-preview,
	body.vivi-lite-brand-map-page .vivi-brand-map-canvas-wrap.has-side-panel-expanded .vivi-brand-map-marker-preview{
		border-radius:0 !important;
	}
}

/* VIVI Brand Map v0.10.183：生活探索標題下方新增品牌標籤篩選，視覺完全沿用品牌類別。 */
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-head .vivi-brand-map-label-filter,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-head .vivi-brand-map-label-filter{
	width:100%;
	max-width:100%;
	min-width:0;
	margin-top:8px;
}
body.vivi-lite-brand-map-page .vivi-brand-map-label-filter .vivi-brand-map-tag-popover,
body.vivi-lite-brand-archive-page .vivi-brand-map-label-filter .vivi-brand-map-tag-popover{
	left:0;
	right:auto;
	width:min(430px,100%);
}
body.vivi-brand-label-sheet-open{
	overflow:hidden;
	touch-action:none;
}
@media (max-width:860px){
	body.vivi-lite-brand-map-page .vivi-brand-map-side-panel-head .vivi-brand-map-label-filter,
	body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel-head .vivi-brand-map-label-filter{
		width:100%;
		max-width:100%;
	}
}

/* VIVI Brand Map v0.10.184：品牌類別未選定時，品牌標籤區塊完全隱藏。 */
body.vivi-lite-brand-map-page .vivi-brand-map-label-filter[hidden],
body.vivi-lite-brand-archive-page .vivi-brand-map-label-filter[hidden]{
	display:none!important;
}


/* v0.10.189：Loop Item 與品牌內層頁改用「品牌類別 | 品牌標籤」單行資訊。 */
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-taxonomy,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-taxonomy {
  margin-top: 7px;
}

.vivi-brand-map-profile-detail-content .vivi-brand-map-inner-taxonomy {
  margin: 0 0 8px;
}


/* v0.10.190：Loop Item 補上地址與電話，並調整資訊列、聯絡資訊與社團頭像的垂直間距。 */
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-item.has-brand-map-loop-contact,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-item.has-brand-map-loop-contact {
  min-height: 168px !important;
}

body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-contact-list,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-contact-list {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 5px;
  width: 100%;
  min-width: 0;
  margin-top: 11px;
}

body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-contact-line,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-contact-line {
  display: flex;
  align-items: flex-start;
  gap: 7px;
  width: 100%;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  color: var(--vivi-color-text-muted, #6b7280);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.45;
  text-decoration: none;
}

body.vivi-lite-brand-map-page .vivi-brand-map-side-panel a.vivi-brand-map-loop-contact-line:hover,
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel a.vivi-brand-map-loop-contact-line:focus-visible,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel a.vivi-brand-map-loop-contact-line:hover,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel a.vivi-brand-map-loop-contact-line:focus-visible {
  color: var(--vivi-color-primary, #a56a16);
  text-decoration: none;
}

body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-contact-label,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-contact-label {
  flex: 0 0 auto;
  color: var(--vivi-color-heading, #111827);
  font-weight: 600;
}

body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-contact-value,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-contact-value {
  display: block;
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-item.has-brand-map-loop-contact .vivi-brand-map-loop-badges,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-item.has-brand-map-loop-contact .vivi-brand-map-loop-badges {
  margin-top: 11px;
  padding-top: 0;
}

@media (max-width: 860px) {
  body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-item.has-brand-map-loop-contact,
  body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-item.has-brand-map-loop-contact {
    min-height: 160px !important;
  }
}

/* VIVI Brand Map v0.10.203：Loop Item 加入生活票券與 94小確幸快捷 icon。 */
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-actions,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-actions{
  flex-wrap:wrap;
  row-gap:6px!important;
}
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-ticket-link,
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-deal-link,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-ticket-link,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-deal-link{
  flex:0 0 auto;
}



/* v0.10.232：生活探索 Loop Item 顯示使用者與品牌的直線距離。 */
body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-title-row,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-title-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
}

body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-name,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-name {
  flex: 1 1 auto;
  min-width: 0;
}

body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-distance,
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-distance {
  flex: 0 0 auto;
  margin-top: 1px;
  color: var(--vivi-color-text-muted, #6b7280);
  font-size: 11px;
  font-weight: 400;
  line-height: 1.35;
  white-space: nowrap;
}

body.vivi-lite-brand-map-page .vivi-brand-map-side-panel .vivi-brand-map-loop-distance[hidden],
body.vivi-lite-brand-archive-page .vivi-brand-map-side-panel .vivi-brand-map-loop-distance[hidden] {
  display: none !important;
}

/* VIVI Brand Map v0.10.242：搜尋此區域固定於搜尋浮層內，並保留地圖選取狀態。 */
body.vivi-lite-brand-map-page .vivi-brand-map-area-search-control,
body.vivi-lite-brand-archive-page .vivi-brand-map-area-search-control{
	position:relative;
	top:auto;
	left:auto;
	right:auto;
	z-index:1;
	display:flex;
	justify-content:center;
	width:100%;
	min-width:0;
	margin:9px 0 0;
	pointer-events:none;
	opacity:1;
	transform:none;
	transition:opacity .18s ease,transform .18s ease;
	box-sizing:border-box;
}
body.vivi-lite-brand-map-page .vivi-brand-map-area-search-control[hidden],
body.vivi-lite-brand-archive-page .vivi-brand-map-area-search-control[hidden]{
	display:none!important;
}
body.vivi-lite-brand-map-page .vivi-brand-map-area-search-control button,
body.vivi-lite-brand-archive-page .vivi-brand-map-area-search-control button{
	appearance:none;
	-webkit-appearance:none;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:40px;
	padding:0 18px;
	border:1px solid rgba(17,24,39,.12);
	border-radius:999px;
	background:rgba(255,255,255,.97);
	box-shadow:0 10px 26px rgba(17,24,39,.18);
	color:#111827;
	font-size:14px;
	font-weight:700;
	line-height:1;
	cursor:pointer;
	pointer-events:auto;
	-webkit-backdrop-filter:blur(12px);
	backdrop-filter:blur(12px);
}
body.vivi-lite-brand-map-page .vivi-brand-map-area-search-control button:hover,
body.vivi-lite-brand-map-page .vivi-brand-map-area-search-control button:focus-visible,
body.vivi-lite-brand-archive-page .vivi-brand-map-area-search-control button:hover,
body.vivi-lite-brand-archive-page .vivi-brand-map-area-search-control button:focus-visible{
	border-color:rgba(185,132,84,.55);
	background:#fff;
	color:var(--vivi-color-orange,#b98454);
	outline:none;
	box-shadow:0 12px 30px rgba(17,24,39,.20),0 0 0 3px rgba(185,132,84,.12);
}
body.vivi-lite-brand-map-page .vivi-brand-map-area-search-control button:active,
body.vivi-lite-brand-archive-page .vivi-brand-map-area-search-control button:active{
	transform:translateY(1px);
}

body.vivi-lite-brand-map-page .vivi-brand-map-area-result-summary,
body.vivi-lite-brand-archive-page .vivi-brand-map-area-result-summary{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	margin:0 0 10px;
	padding:10px 12px;
	border:1px solid rgba(17,24,39,.08);
	border-radius:var(--vivi-radius,8px);
	background:var(--vivi-color-bg-soft,#f7f7f8);
	color:var(--vivi-color-text-muted,#667085);
	font-size:12px;
	font-weight:600;
	line-height:1.45;
}
body.vivi-lite-brand-map-page .vivi-brand-map-area-result-summary button,
body.vivi-lite-brand-archive-page .vivi-brand-map-area-result-summary button,
body.vivi-lite-brand-map-page .vivi-brand-map-area-empty button,
body.vivi-lite-brand-archive-page .vivi-brand-map-area-empty button{
	appearance:none;
	-webkit-appearance:none;
	flex:0 0 auto;
	padding:0;
	border:0;
	background:transparent;
	color:var(--vivi-color-orange,#b98454);
	font:inherit;
	font-weight:700;
	text-decoration:underline;
	text-underline-offset:3px;
	cursor:pointer;
}
body.vivi-lite-brand-map-page .vivi-brand-map-area-result-summary button:focus-visible,
body.vivi-lite-brand-archive-page .vivi-brand-map-area-result-summary button:focus-visible,
body.vivi-lite-brand-map-page .vivi-brand-map-area-empty button:focus-visible,
body.vivi-lite-brand-archive-page .vivi-brand-map-area-empty button:focus-visible{
	outline:2px solid rgba(185,132,84,.45);
	outline-offset:3px;
}
body.vivi-lite-brand-map-page .vivi-brand-map-area-empty p,
body.vivi-lite-brand-archive-page .vivi-brand-map-area-empty p{
	margin:0 0 10px;
}

@media (max-width:860px){
	body.vivi-lite-brand-map-page .vivi-brand-map-area-search-control,
	body.vivi-lite-brand-archive-page .vivi-brand-map-area-search-control{
		margin-top:8px;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-area-search-control button,
	body.vivi-lite-brand-archive-page .vivi-brand-map-area-search-control button{
		min-height:38px;
		padding:0 16px;
		font-size:13px;
	}
	body.vivi-lite-brand-map-page .vivi-brand-map-area-result-summary,
	body.vivi-lite-brand-archive-page .vivi-brand-map-area-result-summary{
		align-items:flex-start;
		padding:9px 10px;
		font-size:11px;
	}
}

/* VIVI Brand Map v0.10.260：VIVI嚴選顏色以即時 merchant 角色名單為準，拖曳／縮放重建 Marker 時維持同一判定。 */

