/* Account Overview — card grid linking to each booking flow. Tokens only. */

.kab-ovw__title{
	font-family:var(--font-display); font-weight:var(--display-w);
	letter-spacing:var(--display-ls); line-height:1.1;
	font-size:1.5rem; color:var(--ink); margin:0 0 1rem;
}
.kab-ovw__grid{
	display:grid; gap:14px;
	grid-template-columns:repeat(auto-fill, minmax(210px, 1fr));
}
.kab-ovw__card{
	position:relative; display:flex; flex-direction:column; gap:6px;
	padding:var(--card-pad); text-decoration:none; color:inherit;
	transition:border-color .15s ease, transform .15s ease, box-shadow .15s ease;
}
.kab-ovw__card:hover{
	border-color:var(--accent);
	transform:translateY(-2px);
	box-shadow:var(--shadow, 0 10px 24px -16px rgba(12,18,26,.35));
}
.kab-ovw__icon{
	display:grid; place-items:center; width:40px; height:40px; border-radius:999px;
	background:color-mix(in srgb, var(--accent) 12%, transparent); color:var(--accent);
	font-size:1.05rem; margin-bottom:2px;
}
.kab-ovw__t{ font-family:var(--font-display); font-weight:var(--display-w); font-size:1.08rem; color:var(--ink); }
.kab-ovw__d{ font-size:.86rem; color:var(--ink-soft); line-height:1.45; }
.kab-ovw__arrow{ position:absolute; top:var(--card-pad); right:var(--card-pad); color:var(--accent); font-size:1.1rem; opacity:.6; transition:opacity .15s ease, transform .15s ease; z-index:1; }
.kab-ovw__card:hover .kab-ovw__arrow{ opacity:1; transform:translateX(2px); }

/* Card with a background photo — overlay keeps the white text readable
   (white-on-photo, same approach as campaign-widget). */
.kab-ovw__card.has-bg{
	min-height:150px; justify-content:flex-end;
	background-size:cover; background-position:center; border-color:transparent;
	overflow:hidden; color:#fff;
}
.kab-ovw__card.has-bg::before{
	content:''; position:absolute; inset:0;
	background:linear-gradient(180deg, rgba(0,0,0,.18) 0%, rgba(0,0,0,.66) 100%);
}
.kab-ovw__card.has-bg > *{ position:relative; z-index:1; }
.kab-ovw__card.has-bg .kab-ovw__t{ color:#fff; }
.kab-ovw__card.has-bg .kab-ovw__d{ color:rgba(255,255,255,.9); }
.kab-ovw__card.has-bg .kab-ovw__arrow{ color:#fff; opacity:.85; }
.kab-ovw__card.has-bg .kab-ovw__icon{ background:rgba(255,255,255,.22); color:#fff; }
