.widgets--success-probability {
	padding: 5rem var(--pd);
	background: var(--c8);
	color: var(--g6);
	[hidden] { display: none !important; }
	.sp-intro { max-width: 52rem; }
	.sp-eyebrow { margin: 0 0 1rem; font-size: 0.8rem; font-weight: 800; letter-spacing: 0.06em; color: var(--c1); text-transform: uppercase; }
	h2 { margin: 0 0 1.5rem; font-size: 2.4rem; font-weight: 800; line-height: 1.2; text-wrap: balance; }
	.sp-text { color: var(--g4); line-height: 1.65; }
	.sp-text > :first-child, .sp-grid-note > :first-child, .sp-explanation > :first-child, .sp-limits > :first-child { margin-top: 0; }
	.sp-text > :last-child, .sp-grid-note > :last-child, .sp-explanation > :last-child, .sp-limits > :last-child { margin-bottom: 0; }
	.sp-assumption { margin: 2rem 0; font-size: 1.1rem; line-height: 1.6; }
	.sp-base { color: var(--c1); }
	.sp-legend { display: flex; flex-wrap: wrap; gap: 0.75rem 2rem; margin-bottom: 1.5rem; }
	.sp-legend > span { display: flex; align-items: center; gap: 0.5rem; font-size: 0.85rem; line-height: 1.5; }
	.sp-legend i { flex: 0 0 0.75rem; height: 0.75rem; border-radius: 0.2rem; }
	.sp-success { background: var(--c1); }
	.sp-remaining { background: var(--g2); }
	.sp-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
	.sp-card { min-width: 0; padding: 2rem; border: var(--px) solid var(--c6); border-radius: 1.25rem; background: var(--bg); }
	.sp-card h3 { margin: 0; font-size: 1rem; font-weight: 700; line-height: 1.5; }
	.sp-percentage { margin: 0.75rem 0 0.5rem; font-size: 3.5rem; font-weight: 800; line-height: 1.15; color: var(--c2); font-variant-numeric: tabular-nums; }
	.sp-count { min-height: 3rem; margin: 0 0 1.5rem; font-size: 0.9rem; line-height: 1.5; color: var(--g4); }
	.sp-grid { display: grid; grid-template-columns: repeat(10, minmax(0, 1fr)); gap: 0.25rem; max-width: 20rem; }
	.sp-cell { display: block; aspect-ratio: 1 / 1; border-radius: 0.15rem; }
	.sp-rest { margin: 1.5rem 0 0; padding-top: 1rem; border-top: var(--px) solid var(--g2); color: var(--g4); font-size: 0.85rem; line-height: 1.5; }
	.sp-grid-note { margin-top: 1.25rem; max-width: 70rem; font-size: 0.8rem; line-height: 1.6; color: var(--g4); }
	.sp-explanation { margin-top: 2rem; padding: 1.5rem 2rem; border-left: 0.25rem solid var(--c3); background: var(--bg); font-size: 1.05rem; line-height: 1.65; }
	.sp-method { margin-top: 2rem; border: var(--px) solid var(--c6); border-radius: 1rem; background: var(--bg); }
	.sp-method > summary { padding: 1.25rem 1.5rem; color: var(--c2); font-weight: 700; line-height: 1.5; cursor: pointer; }
	.sp-method > summary:focus-visible { outline: 0.2rem solid var(--c3); outline-offset: 0.25rem; border-radius: 1rem; }
	.sp-method-content { padding: 0 1.5rem 1.5rem; }
	.sp-formula { padding: 1.25rem; border-radius: 0.75rem; background: var(--c8); color: var(--c2); font-size: 1.75rem; font-weight: 800; line-height: 1.4; text-align: center; }
	.sp-formula sup { font-size: 0.65em; }
	.sp-definitions { display: flex; flex-wrap: wrap; gap: 1rem 2rem; margin: 1.5rem 0; }
	.sp-definitions > div { display: flex; align-items: baseline; gap: 0.75rem; }
	.sp-definitions dt { font-weight: 800; color: var(--c1); }
	.sp-definitions dd { margin: 0; line-height: 1.6; }
	.sp-limits, .sp-fallback { font-size: 0.9rem; line-height: 1.65; color: var(--g4); }
	@media (max-width: 1279px) { .sp-card { padding: 1.5rem; } .sp-percentage { font-size: 3rem; } }
	@media (max-width: 991px) { .sp-cards { gap: 1rem; } .sp-card { padding: 1.25rem; } .sp-percentage { font-size: 2.75rem; } }
	@media (max-width: 767px) {
		padding-block: 4rem;
		h2 { font-size: 2rem; }
		.sp-cards { grid-template-columns: minmax(0, 1fr); }
		.sp-grid { max-width: 18rem; }
		.sp-count { min-height: 0; }
		.sp-explanation { padding: 1.25rem 1.5rem; font-size: 1rem; }
	}
	@media (max-width: 540px) { padding: 3rem 1rem; .sp-card { padding: 1.5rem; } .sp-formula { font-size: 1.4rem; padding: 1rem 0.5rem; } .sp-method-content { padding-inline: 1rem; } }
}
