.university-widget {
	width: min(100%, 580px);
	margin-left: auto;
}

.university-widget__card {
	position: relative;
	height: 640px;
	background: #fff;
	border-radius: 16px;
	border: 1px solid #dbeafe;
	box-shadow: 0 12px 48px rgba(30,64,175,0.12), 0 2px 8px rgba(30,64,175,0.06);
	overflow: hidden;
}

.university-widget__top-bar {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: #1d4ed8;
	z-index: 20;
}

.university-widget__logo {
	position: absolute;
	top: 12px;
	left: 50%;
	transform: translateX(-50%);
	font-size: 18px;
	font-weight: 900;
	letter-spacing: -0.02em;
	z-index: 20;
	display: flex;
	gap: 1px;
	animation: universityWidgetLogoSlideIn 0.4s ease-out;
}

.university-widget__logo-a { color: #1d4ed8; }
.university-widget__logo-b { color: #1e293b; }

.university-widget__badge {
	position: absolute;
	top: 16px;
	right: 16px;
	padding: 4px 12px;
	background: #1d4ed8;
	color: #fff;
	font-size: 10px;
	font-weight: 700;
	border-radius: 999px;
	z-index: 20;
	animation: universityWidgetBadgeIn 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) 0.15s backwards;
}

.university-widget__panel {
	position: absolute;
	inset: 0;
	padding: 48px 20px 20px;
	display: flex;
	flex-direction: column;
	gap: 12px;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.38s ease-out;
}

.university-widget__panel.active {
	opacity: 1;
	pointer-events: auto;
	animation: universityWidgetContentFadeIn 0.38s ease-out;
}

.university-widget__header { flex-shrink: 0; }

.university-widget__header-label {
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: #93c5fd;
}

.university-widget__header-title {
	font-size: 16px;
	font-weight: 900;
	color: #1e293b;
	letter-spacing: -0.01em;
	margin-top: 2px;
}

.university-widget__header-sub {
	font-size: 11px;
	color: #64748b;
	margin-top: 2px;
}

.university-widget__count-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 10px;
	background: #eff6ff;
	border: 1px solid #bfdbfe;
	border-radius: 999px;
	margin-top: 8px;
	animation: universityWidgetScaleIn 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) 0.3s backwards;
}

.university-widget__count-number {
	font-size: 12px;
	font-weight: 900;
	color: #1d4ed8;
}

.university-widget__count-label {
	font-size: 9px;
	color: #64748b;
}

.university-widget__cert-preview {
	height: 160px;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
	animation: universityWidgetScaleIn 0.4s ease-out 0.1s backwards;
}

.university-widget__cert-inner {
	width: 100%;
	height: 100%;
	background: #fff;
	border: 2px solid #bfdbfe;
	border-radius: 8px;
	box-shadow: 0 4px 20px rgba(30,64,175,0.10);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
	animation: universityWidgetSlideUp 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) 0.25s backwards;
}

.university-widget__cert-seal,
.university-widget__frame-seal {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.university-widget__cert-seal {
	border: 2px solid #1d4ed8;
	margin-bottom: 8px;
	animation: universityWidgetRotateIn 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) 0.5s backwards;
}

.university-widget__cert-seal-inner {
	width: 32px;
	height: 32px;
	background: #dbeafe;
	border-radius: 50%;
}

.university-widget__cert-title,
.university-widget__frame-title {
	font-family: Georgia, serif;
	color: #1e3a8a;
}

.university-widget__cert-title {
	font-size: 11px;
	font-weight: 600;
	animation: universityWidgetFadeIn 0.4s ease-out 0.65s backwards;
}

.university-widget__cert-name {
	margin-top: 8px;
	padding: 4px 12px;
	background: #eff6ff;
	border: 1px solid #bfdbfe;
	border-radius: 4px;
	animation: universityWidgetExpandWidth 0.4s ease-out 0.75s backwards;
}

.university-widget__cert-name-text {
	font-size: 10px;
	font-weight: 800;
	color: #1d4ed8;
}

.university-widget__cert-lines,
.university-widget__frame-lines {
	display: flex;
	gap: 8px;
	margin-top: 12px;
}

.university-widget__cert-line,
.university-widget__frame-lines div {
	height: 1.5px;
	background: #e2e8f0;
	border-radius: 1px;
	animation: universityWidgetExpandX 0.3s ease-out backwards;
	transform-origin: left;
}

.university-widget__cert-check {
	position: absolute;
	bottom: -8px;
	right: -8px;
	width: 32px;
	height: 32px;
	background: #1d4ed8;
	border-radius: 50%;
	box-shadow: 0 2px 10px rgba(29,78,216,0.35);
	display: flex;
	align-items: center;
	justify-content: center;
	animation: universityWidgetCheckBounce 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) 1s backwards;
}

.university-widget__feature-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	flex-shrink: 0;
}

.university-widget__feature-item,
.university-widget__uni-item,
.university-widget__spec-item {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 12px;
	border-radius: 12px;
	animation: universityWidgetScaleIn 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) backwards;
}

.university-widget__feature-item--metric {
	justify-content: center;
	text-align: center;
}

.university-widget__feature-icon {
	font-size: 14px;
	animation: universityWidgetIconRotate 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) backwards;
}

.university-widget__feature-label,
.university-widget__uni-name {
	font-size: 10px;
	font-weight: 700;
}

.university-widget__uni-list,
.university-widget__spec-list,
.university-widget__premium-list {
	display: flex;
	flex-direction: column;
	gap: 6px;
	flex-shrink: 0;
}

.university-widget__uni-item,
.university-widget__spec-item {
	background: #f8fafc;
	border: 1px solid #e2e8f0;
}

.university-widget__uni-icon {
	width: 24px;
	height: 24px;
	border-radius: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.university-widget__uni-name {
	color: #334155;
	flex: 1;
}

.university-widget__uni-country,
.university-widget__metric-sub,
.university-widget__premium-desc {
	font-size: 9px;
	color: #94a3b8;
}

.university-widget__spec-box {
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 12px;
	animation: universityWidgetScaleIn 0.4s ease-out 0.1s backwards;
}

.university-widget__spec-head {
	padding: 10px;
	background: #1d4ed8;
	border-radius: 8px;
	margin-bottom: 8px;
}

.university-widget__spec-head p {
	font-size: 11px;
	font-weight: 900;
	color: #fff;
}

.university-widget__spec-label {
	font-size: 10px;
	font-weight: 600;
	color: #64748b;
	flex: 1;
}

.university-widget__spec-value,
.university-widget__spec-num {
	font-size: 10px;
	font-weight: 700;
}

.university-widget__spec-num {
	font-size: 12px;
	font-weight: 900;
}

.university-widget__framed-cert {
	height: 150px;
	background: linear-gradient(135deg, #1e3a8a 0%, #7c3aed 100%);
	border-radius: 12px;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	animation: universityWidgetScaleIn 0.4s ease-out backwards;
}

.university-widget__frame-border {
	width: 90%;
	height: 85%;
	background: #1e293b;
	border-radius: 8px;
	padding: 3px;
	position: relative;
}

.university-widget__frame-border--phd {
	width: 85%;
	height: 80%;
}

.university-widget__frame-gold {
	width: 100%;
	height: 100%;
	background: #f59e0b;
	border-radius: 6px;
	padding: 2px;
}

.university-widget__frame-inner {
	width: 100%;
	height: 100%;
	background: #fff;
	border-radius: 4px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 12px;
}

.university-widget__frame-seal {
	background: linear-gradient(135deg, #1e3a8a 0%, #7c3aed 100%);
	animation: universityWidgetRotateIn 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) backwards;
}

.university-widget__frame-title {
	font-size: 12px;
	font-weight: 700;
}

.university-widget__frame-title--phd {
	font-size: 11px;
	font-weight: 800;
}

.university-widget__frame-lines--phd {
	gap: 6px;
}

.university-widget__delivered-badge {
	position: absolute;
	top: -12px;
	right: -12px;
	padding: 6px 10px;
	background: #dcfce7;
	border: 1.5px solid #86efac;
	border-radius: 12px;
	display: flex;
	align-items: center;
	gap: 6px;
	box-shadow: 0 2px 8px rgba(22,163,74,0.20);
	animation: universityWidgetCheckBounce 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) backwards;
	transform: rotate(8deg);
}

.university-widget__delivered-text {
	font-size: 8px;
	font-weight: 900;
	color: #16a34a;
}

.university-widget__premium-item {
	background: #1e293b;
	border: 1px solid #334155;
	border-radius: 12px;
	padding: 8px 12px;
	display: flex;
	align-items: center;
	gap: 12px;
	animation: universityWidgetSlideUp 0.4s ease-out backwards;
}

.university-widget__premium-icon {
	font-size: 18px;
	animation: universityWidgetIconRotate 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) backwards;
}

.university-widget__premium-content { flex: 1; }

.university-widget__premium-title {
	font-size: 11px;
	font-weight: 700;
	color: #fff;
}

.university-widget__premium-badge {
	font-size: 9px;
	font-weight: 700;
	padding: 2px 8px;
	border-radius: 999px;
	background: #f59e0b;
	color: #fff;
}

.university-widget__metric-title {
	font-size: 10px;
	font-weight: 700;
	margin-bottom: 2px;
}

.university-widget__cta-button {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 10px;
	background: #eff6ff;
	border: 1.5px solid #bfdbfe;
	border-radius: 12px;
	flex-shrink: 0;
	animation: universityWidgetSlideUp 0.4s ease-out backwards;
	cursor: pointer;
	transition: all 0.2s;
}

.university-widget__cta-button:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(29, 78, 216, 0.15);
}

.university-widget__cta-button--gradient {
	background: linear-gradient(135deg, #1d4ed8 0%, #7c3aed 100%);
	border: none;
}

.university-widget__cta-text {
	font-size: 12px;
	font-weight: 900;
	color: #1d4ed8;
}

.university-widget__cta-text--white { color: #fff; }

.university-widget__dots {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	margin-top: 16px;
}

.university-widget__dot-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
}

.university-widget__dot {
	height: 6px;
	width: 6px;
	border-radius: 3px;
	background: #bfdbfe;
	transition: all 0.3s ease;
}

.university-widget__dot.active {
	width: 28px;
	background: #1d4ed8;
}

.university-widget__dot-label {
	font-size: 9px;
	font-weight: 600;
	color: #bfdbfe;
	transition: color 0.3s ease;
}

.university-widget__dot-label.active { color: #1d4ed8; }

@keyframes universityWidgetLogoSlideIn {
	from { opacity: 0; transform: translateX(-50%) translateY(-10px); }
	to { opacity: 1; transform: translateX(-50%) translateY(0); }
}
@keyframes universityWidgetBadgeIn { from { opacity: 0; transform: scale(0.7); } to { opacity: 1; transform: scale(1); } }
@keyframes universityWidgetContentFadeIn { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: translateY(0); } }
@keyframes universityWidgetScaleIn { from { opacity: 0; transform: scale(0.9); } to { opacity: 1; transform: scale(1); } }
@keyframes universityWidgetSlideUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
@keyframes universityWidgetRotateIn { from { transform: scale(0) rotate(-180deg); } to { transform: scale(1) rotate(0deg); } }
@keyframes universityWidgetFadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes universityWidgetExpandWidth { from { opacity: 0; transform: scaleX(0); } to { opacity: 1; transform: scaleX(1); } }
@keyframes universityWidgetExpandX { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@keyframes universityWidgetCheckBounce { from { opacity: 0; transform: scale(0) rotate(-30deg); } to { opacity: 1; transform: scale(1) rotate(0deg); } }
@keyframes universityWidgetIconRotate { from { transform: scale(0) rotate(-90deg); } to { transform: scale(1) rotate(0deg); } }

@media (max-width: 921px) {
	.university-widget {
		width: min(100%, 540px);
		margin: 0 auto;
	}

	.university-widget__card {
		height: 620px;
	}
}

@media (max-width: 640px) {
	.university-widget {
		width: 100%;
	}

	.university-widget__card {
		height: 600px;
	}

	.university-widget__panel {
		padding: 44px 16px 16px;
	}

	.university-widget__feature-grid {
		grid-template-columns: 1fr;
	}

	.university-widget__dots {
		gap: 10px;
	}
}
