/* Shohoj Doctor Core — base component styles.
   Every color/font/spacing value below reads a CSS custom property
   injected by SDC_Assets from admin Customization settings, so the
   theme (or any theme) can restyle without touching this file. */

 .sdc-card {
	display: flex;
	flex-direction: column;
	min-height: 540px;
	border: 1px solid var(--sdc-color-border, #e2e8f0);
	border-radius: var(--sdc-radius, 12px);
	box-shadow: var(--sdc-card-shadow, none);
	padding: 16px;
	text-decoration: none;
	color: var(--sdc-color-text, #1a1a1a);
	background: #fff;
	transition: transform .15s ease, box-shadow .15s ease;
	box-sizing: border-box;
}
.sdc-card:hover { transform: translateY(-2px); }
.sdc-card-media {
	position: relative;
	display: block;
	width: 100%;
	overflow: hidden;
	flex: 0 0 auto;
	border-radius: calc(var(--sdc-radius, 12px) - 4px);
	background: #f1f5f9;
}
.sdc-doctor-card .sdc-card-media {
	aspect-ratio: 3 / 4;
}
.sdc-center-card .sdc-card-media {
	aspect-ratio: 4 / 3;
}
.sdc-card img,
.sdc-card .sdc-card-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: inherit;
}
.sdc-doctor-card .sdc-card-img {
	object-fit: cover;
	object-position: center 20%;
	background: transparent;
}
.sdc-card-media > img.sdc-card-img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
}
.sdc-card-body {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	min-height: 0;
	padding-top: 12px;
}
.sdc-card-title {
	margin: 0 0 8px;
	line-height: 1.42;
	min-height: 2.7em;
}
.sdc-card-title a { color: inherit; text-decoration: none; }
.sdc-card-meta, .sdc-card-degrees {
	margin: 0 0 7px;
	line-height: 1.45;
	min-height: 1.45em;
}
.sdc-card-row {
	display: flex;
	flex-direction: column;
	gap: 9px;
	min-height: 58px;
	margin-top: 2px;
}
.sdc-card-rating { display: inline-flex; align-items: center; gap: 2px; min-height: 20px; line-height: 1.35; }
.sdc-card-rating-empty { color: #cbd5e1; }
.sdc-card-location { display: block; line-height: 1.5; min-height: 22px; overflow-wrap: anywhere; }
.sdc-card-actions {
	display: flex;
	align-items: stretch;
	gap: 8px;
	margin-top: 14px;
	flex: 0 0 auto;
}
.sdc-btn-view {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1 1 auto;
	min-height: 40px;
	padding: 8px 14px;
	border-radius: 8px;
	background: var(--sdc-color-primary, #1877F2);
	color: var(--sdc-color-btn-text, #fff);
	text-decoration: none;
	box-sizing: border-box;
}
.sdc-btn-call {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 42px;
	min-height: 40px;
	border: 1px solid var(--sdc-color-border, #e2e8f0);
	border-radius: 8px;
	background: #fff;
	color: var(--sdc-color-text, #1a1a1a);
	text-decoration: none;
	box-sizing: border-box;
}
.sdc-card-tags-primary { min-height: 34px; margin-top: 8px; }
.sdc-card-extra { margin-top: 7px; display: flex; flex-wrap: wrap; gap: 6px; }
.sdc-card-img-placeholder { display:flex; align-items:center; justify-content:center; width:100%; height:100%; font-size:18px; }
.sdc-badge { position:absolute; top:10px; left:10px; z-index:2; }
.sdc-badge-verified-right { left:auto; right:10px; }
.sdc-doctor-grid, .sdc-center-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 16px;
	align-items: stretch;
}
@media (max-width: 767px) {
	.sdc-card { min-height: 0; height: auto; padding: 14px; }
	.sdc-card-media > img.sdc-card-img { object-position: center 18%; }
	.sdc-doctor-card .sdc-card-media { aspect-ratio: 3 / 4; }
	.sdc-center-card .sdc-card-media { aspect-ratio: 4 / 3; }
	.sdc-card-body { padding-top: 12px; }
	.sdc-card-actions { margin-top: 12px; }
}
.sdc-verified-badge { color: var(--sdc-color-primary, #1877F2); }
.sdc-view-profile {
	display: inline-block;
	margin-top: 8px;
	padding: 6px 14px;
	border-radius: 999px;
	background: var(--sdc-color-primary, #1877F2);
	color: var(--sdc-color-btn-text, #fff);
	font-size: 13px;
}
.sdc-notice { border-left: 4px solid var(--sdc-color-accent, #F59E0B); background: #FFF8E6; padding: 10px 14px; border-radius: 8px; margin-bottom: 10px; }
.sdc-notice-high { border-left-color: #DC2626; background: #FEF2F2; }
.sdc-global-search { display: flex; gap: 8px; }
.sdc-global-search input { flex: 1; padding: 10px 14px; border-radius: 999px; border: 1px solid var(--sdc-color-border, #e2e8f0); }
.sdc-global-search button, .sdc-review-form button {
	background: var(--sdc-color-primary, #1877F2);
	color: var(--sdc-color-btn-text, #fff);
	border: none; border-radius: 999px; padding: 10px 20px; cursor: pointer;
}
.sdc-filter-bar { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 20px; }
.sdc-filter-bar select, .sdc-filter-bar input { padding: 8px 12px; border-radius: 8px; border: 1px solid var(--sdc-color-border, #e2e8f0); }
.sdc-loading { text-align: center; padding: 24px; color: #888; }
.sdc-empty-state { text-align: center; padding: 40px; color: #888; }
.sdc-honeypot { position: absolute !important; left: -9999px !important; }
