/* Biglietto Digitale — stile scheda */

.bdig-body {
	margin: 0;
	min-height: 100vh;
}

.bdig,
.bdig *,
.bdig *::before,
.bdig *::after {
	box-sizing: border-box;
}

.bdig {
	--bdig-muted: var(--bdig-text);
	--bdig-radius: 36px;
	font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Inter, Roboto, "Helvetica Neue", Arial, sans-serif;
	color: var(--bdig-text);
	line-height: 1.3;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

@supports (color: color-mix(in srgb, red 50%, blue)) {
	.bdig {
		--bdig-muted: color-mix(in srgb, var(--bdig-text) 62%, transparent);
	}
}

/* Reset contro gli stili del tema (utile con lo shortcode) */
.bdig h1,
.bdig h2,
.bdig p,
.bdig ul {
	margin: 0;
	padding: 0;
}
.bdig ul { list-style: none; }
.bdig a { text-decoration: none; color: inherit; }
.bdig img { display: block; max-width: none; border: 0; }

/* Scheda */
.bdig-card {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: 480px;
	margin: 0 auto;
	padding: 44px 22px 0;
	background: var(--bdig-card);
}

.bdig--page .bdig-card {
	min-height: 100vh;
	min-height: 100dvh;
}

@media (min-width: 600px) {
	.bdig--page {
		padding: 48px 16px;
	}
	.bdig--page .bdig-card {
		min-height: 0;
		border-radius: var(--bdig-radius);
		box-shadow: 0 40px 80px -30px rgba(15, 23, 42, .35), 0 0 0 1px rgba(15, 23, 42, .05);
	}
	.bdig--page .bdig-save {
		border-radius: 0 0 var(--bdig-radius) var(--bdig-radius);
	}
}

.bdig--embed .bdig-card {
	border-radius: var(--bdig-radius);
	box-shadow: 0 30px 60px -30px rgba(15, 23, 42, .3), 0 0 0 1px rgba(15, 23, 42, .05);
}
.bdig--embed .bdig-save {
	border-radius: 0 0 var(--bdig-radius) var(--bdig-radius);
}

/* Intestazione */
.bdig-head {
	text-align: center;
	margin-bottom: 30px;
}

.bdig-photo {
	width: 164px;
	height: 164px;
	margin: 0 auto 22px;
	border-radius: 50%;
	overflow: hidden;
	background: var(--bdig-row);
	display: grid;
	place-items: center;
}

.bdig-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.bdig-initials {
	font-size: 54px;
	font-weight: 600;
	letter-spacing: -.02em;
	color: var(--bdig-muted);
}

.bdig .bdig-name {
	font-size: clamp(26px, 7vw, 32px);
	font-weight: 700;
	letter-spacing: -.025em;
	line-height: 1.1;
	color: var(--bdig-text);
	margin-bottom: 8px;
}

.bdig-role {
	font-size: 17px;
	color: var(--bdig-muted);
}

.bdig-role strong {
	font-weight: 600;
	color: var(--bdig-text);
}

.bdig-logo {
	display: flex;
	justify-content: center;
	margin: 0 auto 18px;
	max-width: 100%;
}

.bdig-logo img {
	height: auto;
	max-width: 100%; /* non supera mai la larghezza della scheda */
}

.bdig-logo--top {
	margin-bottom: 26px;
}

.bdig-role {
	text-wrap: balance;
}

.bdig .bdig-name {
	overflow-wrap: anywhere;
	text-wrap: balance;
}

.bdig-sep {
	margin: 0 .3em;
	opacity: .6;
}

/* Contatti */
.bdig-list {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 10px;
}

.bdig-list > li {
	min-width: 0;
	max-width: 100%;
	margin: 0;
	padding: 0;
}

.bdig-item {
	display: flex;
	align-items: center;
	width: 100%;
	min-width: 0;
	max-width: 100%;
	overflow: hidden;
	gap: 14px;
	padding: 12px 14px 12px 12px;
	border-radius: 16px;
	background: var(--bdig-row);
	transition: transform .15s ease;
}

.bdig-item:hover { transform: translateY(-1px); }
.bdig-item:active { transform: scale(.985); }

.bdig-item:focus-visible,
.bdig-save-btn:focus-visible {
	outline: 2px solid var(--bdig-btn);
	outline-offset: 3px;
}

.bdig-icon {
	flex: 0 0 42px;
	width: 42px;
	height: 42px;
	border-radius: 12px;
	display: grid;
	place-items: center;
	color: #fff;
	background: var(--tile, #6b7280);
}

.bdig-icon svg {
	width: 22px;
	height: 22px;
}

.bdig-icon--mobile    { --tile: #2fc24f; }
.bdig-icon--phone     { --tile: #5b6bd6; }
.bdig-icon--whatsapp  { --tile: #25d366; }
.bdig-icon--email     { --tile: #1a73e8; }
.bdig-icon--website   { --tile: #475569; }
.bdig-icon--address   { --tile: #ea4335; }
.bdig-icon--instagram { --tile: radial-gradient(circle at 30% 107%, #fdf497 0%, #fd5949 45%, #d6249f 60%, #285aeb 90%); }
.bdig-icon--facebook  { --tile: #1877f2; }
.bdig-icon--linkedin  { --tile: #0a66c2; }
.bdig-icon--youtube   { --tile: #ff0000; }
.bdig-icon--tiktok    { --tile: #000; }
.bdig-icon--x         { --tile: #000; }

.bdig--icons-mono .bdig-icon {
	--tile: var(--bdig-btn);
	color: var(--bdig-btn-text);
}

.bdig-text {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.bdig-item-title {
	font-size: 16px;
	font-weight: 600;
	line-height: 1.25;
}

.bdig-item-sub {
	font-size: 14px;
	line-height: 1.35;
	color: var(--bdig-muted);
	overflow-wrap: break-word; /* manda a capo anche email e URL lunghi */
}

.bdig-arrow {
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	color: var(--bdig-muted);
	opacity: .6;
}

.bdig-arrow svg { width: 100%; height: 100%; }

/* Pulsante sempre visibile */
.bdig-save {
	position: sticky;
	bottom: 0;
	z-index: 5;
	margin: auto -22px 0;
	padding: 28px 22px calc(22px + env(safe-area-inset-bottom, 0px));
	background: linear-gradient(to top, var(--bdig-card) 72%, transparent);
}

.bdig-save-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	padding: 17px 20px;
	border-radius: 16px;
	background: var(--bdig-btn);
	color: var(--bdig-btn-text) !important;
	font-size: 17px;
	font-weight: 600;
	box-shadow: 0 14px 28px -14px rgba(15, 23, 42, .55);
	transition: transform .15s ease, filter .15s ease;
}

.bdig-save-btn:hover { filter: brightness(1.08); }
.bdig-save-btn:active { transform: scale(.98); }

.bdig-save-btn svg {
	width: 21px;
	height: 21px;
}

@media (prefers-reduced-motion: reduce) {
	.bdig-item,
	.bdig-save-btn { transition: none; }
}
